rjson/0000755000176200001440000000000014672073322011413 5ustar liggesusersrjson/MD50000644000176200001440000000351214672073322011724 0ustar liggesuserseddd667b747bec3c0c5900cca9e16d77 *DESCRIPTION 34551522533d48d0a968454bea1b4d30 *NAMESPACE 920bfe228e7e39254acf58be1769b632 *R/json.R 0489b313250de174ca1d68cbf67f9000 *R/zzz.R c9d46cb3257c9cab0e1936b1823bc0bf *build/vignette.rds 4ed09b8481d72e96ce34417910575cba *inst/changelog.txt 475d7413bdebc23bc88ca5e2176721d5 *inst/doc/json_rpc_server.Rnw 6b00f146f5265fac1c832216140d3250 *inst/doc/json_rpc_server.pdf cee224c8dc417dece605178406f9b2d5 *inst/rpc_server/server.r ce0131b40a9fe6dbd17ac5e623c438e9 *inst/rpc_server/some_script.r e29f8f1f26f017f214682f36e42db7e6 *inst/rpc_server/start_server 73af6807a8fbffa9294a857fbe1e9142 *inst/rpc_server/start_server.bat d6a2d5044743f5f4235bdd72e4d87cd7 *inst/unittests/runtests.r 53d51f59838c16022f293e07e700d08b *inst/unittests/test.array.r c1a9ccb854491a312e8afde84e3e8cf4 *inst/unittests/test.big.r c92420b04cca34c2cbef8dfa7af0995f *inst/unittests/test.crash.r d9da76109062c8e9b65807c53053e784 *inst/unittests/test.factors.r fb9314c5a9bb386a497fb6bf942302d9 *inst/unittests/test.largedata.r 32416767cfe1768135f47529976f691d *inst/unittests/test.list.r 9bbd49e1b8d8d9a446a7b5caaae8e751 *inst/unittests/test.number.r 3ba186f308594cf58f9257b54d0d36d8 *inst/unittests/test.strings.r f5bc8385d4462948bd04504b5be58ac1 *inst/unittests/test.tojson.r c5f5cfe0694454ace3e4dc27bf36441e *inst/unittests/test.twitter.r e33c13542af5bfcee0bc29bf206a8b1b *inst/unittests/test.unicode.r 0db00ecbdf2e1416756fb75af074a9be *man/fromJSON.Rd b84795a61a8fa36f040a15e5e164e64c *man/newJSONParser.Rd 3125920a7f681fd8670e16a21ccead94 *man/rjson.Rd ff2f8e8ab06f34554d18135ce45d172b *man/toJSON.Rd 576a2c8ed6901398273fdfeb16c6dcd3 *src/dump.cpp 153eaf540a186337afb167fae3aab570 *src/funcs.h 6b58a6ea3f99c06da6f2432f722a827b *src/parser.c a2b3707ed77dc4020a3518df3c23c1ca *src/register.c 475d7413bdebc23bc88ca5e2176721d5 *vignettes/json_rpc_server.Rnw rjson/R/0000755000176200001440000000000013646044300011606 5ustar liggesusersrjson/R/zzz.R0000644000176200001440000000010313646044300012560 0ustar liggesusers.onLoad <- function(lib, pkg) { library.dynam("rjson", pkg, lib) }rjson/R/json.R0000644000176200001440000002553213646044300012711 0ustar liggesuserstoJSON <- function( x, indent = 0, method = "C" ) { if( method == "C" ) { return( .Call("toJSON", x, as.integer(indent), PACKAGE="rjson")[[ 1 ]] ) } else if( method != "R" ) { stop("bad method - only R or C" ) } #convert factors to characters if( is.factor( x ) == TRUE ) { tmp_names <- names( x ) x = as.character( x ) names( x ) <- tmp_names } if( !is.vector(x) && !is.null(x) && !is.list(x) ) { x <- as.list( x ) warning("JSON only supports vectors and lists - But I'll try anyways") } if( is.null(x) ) return( "null" ) #treat named vectors as lists if( is.null( names( x ) ) == FALSE ) { x <- as.list( x ) } #named lists only if( is.list(x) && !is.null(names(x)) ) { if( any(duplicated(names(x))) ) stop( "A JSON list must have unique names" ); str = "{" first_elem = TRUE for( n in names(x) ) { if( first_elem ) first_elem = FALSE else str = paste(str, ',', sep="") str = paste(str, deparse(n), ":", toJSON(x[[n]], "R"), sep="") } str = paste( str, "}", sep="" ) return( str ) } #treat lists without names as JSON array if( length(x) != 1 || is.list(x) ) { if( !is.null(names(x)) ) return( toJSON(as.list(x), "R") ) #vector with names - treat as JSON list str = "[" first_elem = TRUE for( val in x ) { if( first_elem ) first_elem = FALSE else str = paste(str, ',', sep="") str = paste(str, toJSON(val, "R"), sep="") } str = paste( str, "]", sep="" ) return( str ) } if( is.nan(x) ) return( "\"NaN\"" ) if( is.na(x) ) return( "\"NA\"" ) if( is.infinite(x) ) return( ifelse( x == Inf, "\"Inf\"", "\"-Inf\"" ) ) if( is.logical(x) ) return( ifelse(x, "true", "false") ) if( is.character(x) ) return( gsub("\\/", "\\\\/", deparse(x)) ) if( is.numeric(x) ) return( as.character(x) ) stop( "shouldnt make it here - unhandled type not caught" ) } #create an object, which can be used to parse JSON data spanning multiple buffers #it will be able to pull out multiple objects.. e.g: "[5][2,1]" is two different JSON objects - it can be called twice to get both items newJSONParser <- function( method = "R" ) { if( method == "R" ) { buffer <- c() return( list( "addData" = function( buf ) { chars = strsplit(buf, "")[[1]] for( ch in chars ) buffer[ length(buffer) + 1 ] <<- ch }, "getObject" = function() { tmp <- .parseValue( buffer, 1) if( is.null( tmp$incomplete ) == FALSE ) return( NULL ) if( tmp$size > length(buffer) ) buffer <<- c() else buffer <<- buffer[ tmp$size : length(buffer) ] return( tmp$val ) } ) ) } else if( method == "C" ) { buffer <- "" return( list( "addData" = function( buf ) { buffer <<- paste( buffer, buf, sep="" ) }, "getObject" = function() { tmp <- .Call("fromJSON", buffer, PACKAGE="rjson") if( any( class( tmp[[ 1 ]] ) == "incomplete" ) ) return( NULL ) size <- tmp[[ 2 ]] + 1 buffer <<- substring( buffer, size, nchar( buffer ) ) return( tmp[[ 1 ]] ) } ) ) } stop("bad method - only R or C" ) } fromJSON <- function( json_str, file, method = "C", unexpected.escape = "error", simplify = TRUE ) { if( missing( json_str ) ) { if( missing( file ) ) stop( "either json_str or file must be supplied to fromJSON") json_str <- paste(readLines( file, warn=FALSE ),collapse="") } else { if( missing( file ) == FALSE ) { stop( "only one of json_str or file must be supplied to fromJSON") } } if( !is.character(json_str) ) stop( "json_str must be a character string" ) if( length(json_str) != 1 ) stop( "json_str can only contain a single element" ) json_str <- trimws( json_str ) if( method == "R" ) return( .fromJSON_R( json_str ) ) if( method != "C" ) stop( "only R or C method allowed" ) tmp <- .Call("fromJSON", json_str, unexpected.escape, simplify, PACKAGE="rjson") size <- tmp[[ 2 ]] if( size != nchar( json_str, type = "bytes" ) ) { stop( sprintf("not all data was parsed (%d chars were parsed out of a total of %d chars)", size, nchar( json_str, type = "bytes" ) ) ) } x <- tmp[[ 1 ]] if( any( class(x) == "try-error" ) ) stop( x ) return( x ) } .fromJSON_R <- function( json_str ) { if( !is.character(json_str) ) stop( "JSON objects must be a character string" ) chars = strsplit(json_str, "")[[1]] tmp <- .parseValue( chars, 1) if( is.null( tmp$incomplete ) ) return( tmp$val ) else return( NULL ) } .parseValue <- function( chars, i ) { if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) #ignore whitespace while( chars[i] == " " || chars[i] == "\t" || chars[i] == "\n" ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) } ch = chars[i] if( ch == "{" ) { return( .parseObj( chars, i ) ) } if( ch == "[" ) { return( .parseArray( chars, i ) ) } if( ch == "\"" ) { return( .parseString( chars, i ) ) } if( any(grep("[0-9\\-]", ch)) ) { return( .parseNumber( chars, i ) ) } if( ch == "t" ) { return( .parseTrue( chars, i ) ) } if( ch == "f" ) { return( .parseFalse( chars, i ) ) } if( ch == "n" ) { return( .parseNull( chars, i ) ) } #stop("shouldnt reach end of parseValue") err <- paste( "unexpected data:", paste( chars[ i:length(chars)], collapse = "" ) ) stop( err ) } .parseObj <- function( chars, i ) { obj <- list() if( chars[i] != "{" ) stop("error - no openning tag") i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) first_pass <- TRUE while( TRUE ) { #ignore whitespace while( chars[i] == " " || chars[i] == "\t" || chars[i] == "\n" ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) } #look out for empty lists if( chars[i] == "}" && first_pass == TRUE ) { i = i + 1 break } first_pass <- FALSE #get key str = .parseString( chars, i ) if( is.null( str$incomplete ) == FALSE ) return( str ) key = str$val i = str$size if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) #ignore whitespace while( chars[i] == " " || chars[i] == "\t" || chars[i] == "\n" ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) } #verify seperater if( chars[i] != ":" ) stop("error - no seperator") i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) #ignore whitespace while( chars[i] == " " || chars[i] == "\t" || chars[i] == "\n" ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) } #get value val = .parseValue( chars, i ) if( is.null( val$incomplete ) == FALSE ) return( val ) obj[key] <- list(val$val) i = val$size if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) #ignore whitespace while( chars[i] == " " || chars[i] == "\t" || chars[i] == "\n" ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) } if( chars[i] == "}" ) { i = i + 1 break } if( chars[i] != "," ) stop("error - no closing tag") i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) } return( list(val=obj, size=i) ) } .parseArray <- function( chars, i ) { useVect <- TRUE arr <- list() if( chars[i] != "[" ) stop("error - no openning tag") i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) while( TRUE ) { #ignore whitespace while( chars[i] == " " || chars[i] == "\t" || chars[i] == "\n" ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) } #look out for empty arrays if( chars[i] == "]" ) { i = i + 1 useVect <- FALSE #force an empty list instead of NULL (i.e. value = vector("list",0)) break } #get value val = .parseValue( chars, i ) if( is.null( val$incomplete ) == FALSE ) return( val ) arr[length(arr)+1] <- list(val$val) if( is.list(val$val) || length(val$val) > 1 || is.null(val$val) ) useVect <- FALSE i = val$size if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) #ignore whitespace while( chars[i] == " " || chars[i] == "\t" || chars[i] == "\n" ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) } if( chars[i] == "]" ) { i = i + 1 break } if( chars[i] != "," ) stop("error - no closing tag") i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) } if( useVect ) arr <- unlist(arr) return( list(val=arr, size=i) ) } .parseString <- function( chars, i ) { str_start = i if( chars[i] != "\"") stop("error") i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) while( TRUE ) { while( chars[i] != "\\" && chars[i] != "\"" ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) } if( chars[i] == "\\" ) { i = i + 2 #skip the next char if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) } else break } str_end = i i = i + 1 return(list( val=eval(parse( text=paste(chars[str_start:str_end], collapse="") )), size=i )) } .parseNumber <- function( chars, i ) { str_start = i if( chars[i] == "-" ) i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) if( chars[i] == "0" ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) if( any(grep("[1-9]", chars[i])) ) stop("JSON specs don't allow a number like \"012\"") } else if( any(grep("[1-9]", chars[i])) ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) while( any(grep("[0-9]", chars[i])) ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) } } else { stop( "doesn't look like a valid JSON number" ) } if( chars[i] == "." ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) while( any(grep("[0-9]", chars[i])) ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) } } if( chars[i] == "e" || chars[i] == "E" ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) if( chars[i] == "-" || chars[i] == "+" ) i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) while( any(grep("[0-9]", chars[i])) ) { i = i + 1 if( i > length( chars ) ) return( list( "incomplete" = TRUE ) ) } } str_end = i-1 return(list( val=eval(parse( text=paste(chars[str_start:str_end], collapse="") )), size=i )) } .parseTrue <- function( chars, i ) { if( paste(chars[i:(i+3)], collapse="") == "true" ) return( list(val=TRUE,size=i+4) ) stop("error parsing true value (maybe the word starts with t but isnt true)") } .parseFalse <- function( chars, i ) { if( paste(chars[i:(i+4)], collapse="") == "false" ) return( list(val=FALSE,size=i+5) ) stop("error parsing false value (maybe the word starts with f but isnt false)") } .parseNull <- function( chars, i ) { if( paste(chars[i:(i+3)], collapse="") == "null" ) return( list(val=NULL,size=i+4) ) stop("error parsing null value (maybe the word starts with n but isnt null)") } rjson/vignettes/0000755000176200001440000000000014672066043013425 5ustar liggesusersrjson/vignettes/json_rpc_server.Rnw0000644000176200001440000000262713646044300017317 0ustar liggesusers\documentclass[letter]{article} %\VignetteIndexEntry{JSON RPC server for R} %\VignettePackage{rjson} \begin{document} \title{JSON RPC server for R} \author{Alex Couture-Beil} \maketitle \section{Introduction} Remote proceedure calls (RPC) provide inter-process communication which allow programs to call other program's subroutines. JSON-RPC is a RPC protocol built on top of JSON. JSON-RPC provides a nice way to interface different languages. Sample code for creating an JSON-RPC server for R is supplied with the rjson library. For this example, a client wishing to execute R code will first execute a new instance of R, and will communicate over standard IO (stdin/stdout). After the client executes any number of calls, it will terminate the R session with an end of file (ctrl-D). \section{Sample Code} Sample code can be found in the {\it ..../library/rjson/rpc\_server} directory. The server is started with {\it ./start\_server} (unix), or with {\it start\_server.bat} (windows). An optional paramater specifies a user supplied source file to be loaded by the server, thus allowing the client to execute some user supplied functions. Note that this code posses serious security risks if the client accecpts input from anyone. (i.e. the client redirects IO from some tcp port to the R json-rpc interface). If this is the case, you'll likely want to avoid allowing anyone to pass anything to eval. \end{document} rjson/src/0000755000176200001440000000000014672066043012204 5ustar liggesusersrjson/src/dump.cpp0000644000176200001440000001444613646044300013656 0ustar liggesusers#include #include #include #include //must include these after STL files due to length macro in Rinternals being seen by a STL on OSX. #include #include extern "C" { #include "funcs.h" } std::string escapeString( const char *s ) { std::ostringstream oss; oss << '"'; while( *s ) { switch( *s ) { case '"': oss << "\\\""; break; case '\\': oss << "\\\\"; break; case '\n': oss << "\\n"; break; case '\r': oss << "\\r"; break; case '\t': oss << "\\t"; break; default: unsigned char ch = static_cast(*s); if (( ch <= 0x1F ) || (ch == 0x7F)) { unsigned short val = ch; oss << "\\u" << std::setfill('0') << std::setw(4) << std::hex << val << std::dec; } else if( ch < 0x80 ) { // 0xxxxxxx oss << *s; } else if( (ch & 0xE0) == 0xC0 && s[1] ) { // 110xxxxx 10xxxxxx unsigned short val = (s[1] & 0x3F) + ((s[0] & 0x1F) << 6); oss << "\\u" << std::setfill('0') << std::setw(4) << std::hex << val << std::dec; s += 1; } else if( (ch & 0xF0) == 0xE0 && s[1] && s[2] ) { // 1110xxxx 10xxxxxx 10xxxxxx unsigned short val = (s[2] & 0x3F) + ((s[1] & 0x3F) << 6) + ((s[0] & 0x0F) << 12); oss << "\\u" << std::setfill('0') << std::setw(4) << std::hex << val << std::dec; s += 2; } else if( (ch & 0xF8) == 0xF0 && s[1] && s[2] && s[3] ) { // 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx unsigned long val = (s[3] & 0x3F) + ((s[2] & 0x3F) << 6) + ((s[1] & 0x3F) << 12) + ((s[0] & 0x07) << 18); // Per JSON spec, encode as UTF-16 https://en.wikipedia.org/wiki/UTF-16#Code_points_from_U+010000_to_U+10FFFF // Could probably do directly from UTF-8 for improved performance unsigned long U = val - 0x10000; unsigned short hi = (U >> 10) + 0xD800; unsigned short lo = (U & 0x3FF) + 0xDC00; oss << "\\u" << std::setfill('0') << std::setw(4) << std::hex << hi << std::dec; oss << "\\u" << std::setfill('0') << std::setw(4) << std::hex << lo << std::dec; s += 3; } else { Rf_error("unable to escape string. String is not utf8\n"); } } s++; } oss << '"'; return oss.str(); } #define NO_CONTAINER 0 #define ARRAY_CONTAINER 1 #define OBJECT_CONTAINER 2 std::string toJSON2( SEXP x, int indent, int indent_amount ) { if( x == R_NilValue ) return "null"; int i = 0; int n = Rf_length(x); SEXP names; PROTECT( names = GET_NAMES(x) ); //int container = NO_CONTAINER; std::string container_closer; std::ostringstream oss; if( names != NULL_USER_OBJECT ) { oss << "{"; container_closer = "}"; if( indent_amount > 0 ) { oss << "\n"; } indent += indent_amount; if( Rf_length(names) != n ) Rf_error("number of names does not match number of elements\n"); } else if( n != 1 || TYPEOF(x) == VECSXP ) { oss << "["; container_closer = "]"; indent += indent_amount; if( indent_amount > 0 ) { oss << "\n"; } } SEXP levels; PROTECT( levels = GET_LEVELS(x)); switch( TYPEOF(x) ) { case LGLSXP: for( i = 0; i < n; i++ ) { if( i > 0 ) { oss << ","; if( indent_amount > 0 ) { oss << "\n"; } } oss << std::setw(indent) << ""; if( names != NULL_USER_OBJECT ) oss << escapeString(CHAR(STRING_ELT(names, i))) << ":"; if( LOGICAL(x)[i] == NA_INTEGER ) oss << "\"NA\""; else if( ISNAN( LOGICAL(x)[i] ) ) oss << "\"NaN\""; else if( LOGICAL(x)[i] ) oss << "true"; else oss << "false"; } break; case INTSXP: for( i = 0; i < n; i++ ) { if( i > 0 ) { oss << ","; if( indent_amount > 0 ) { oss << "\n"; } } oss << std::setw(indent) << ""; if( names != NULL_USER_OBJECT ) oss << escapeString(CHAR(STRING_ELT(names, i))) << ":"; if( INTEGER(x)[i] == NA_INTEGER ) oss << "\"NA\""; else if( ISNAN( INTEGER(x)[i] ) ) oss << "\"NaN\""; else if( levels != NULL_USER_OBJECT ) oss << escapeString(CHAR(STRING_ELT(levels, INTEGER(x)[i] - 1 ))); else oss << INTEGER(x)[i]; } break; case REALSXP: for( i = 0; i < n; i++ ) { if( i > 0 ) { oss << ","; if( indent_amount > 0 ) { oss << "\n"; } } oss << std::setw(indent) << ""; if( names != NULL_USER_OBJECT ) { oss << escapeString(CHAR(STRING_ELT(names, i))) << ":"; } if( ISNA(REAL(x)[i]) ) { oss << "\"NA\""; } else if( ISNAN(REAL(x)[i]) ) { oss << "\"NaN\""; } else if( R_FINITE(REAL(x)[i]) ) { oss << std::setprecision( std::numeric_limits::digits10 ) << REAL(x)[i]; } else { oss << (REAL(x)[i] > 0 ? "\"Inf\"" : "\"-Inf\""); } } break; case CPLXSXP: { SEXP p, p_names; PROTECT( p = Rf_allocVector( REALSXP, 2 ) ); PROTECT( p_names = Rf_allocVector( STRSXP, 2 ) ); SET_STRING_ELT( p_names, 0, Rf_mkChar("real") ); REAL(p)[0] = COMPLEX(x)[i].r; SET_STRING_ELT( p_names, 1, Rf_mkChar("imaginary") ); REAL(p)[1] = COMPLEX(x)[i].i; Rf_setAttrib( p, R_NamesSymbol, p_names ); oss << toJSON2(p, indent, indent_amount); UNPROTECT(2); } break; case STRSXP: for( i = 0; i < n; i++ ) { if( i > 0 ) { oss << ","; if( indent_amount > 0 ) { oss << "\n"; } } if( names != NULL_USER_OBJECT ) oss << escapeString(CHAR(STRING_ELT(names, i))) << ":"; if( STRING_ELT(x,i) == NA_STRING ) oss << "\"NA\""; else oss << escapeString(CHAR(STRING_ELT(x,i))); } break; case VECSXP: for( i = 0; i < n; i++ ) { if( i > 0 ) { oss << ","; if( indent_amount > 0 ) { oss << "\n"; } } oss << std::setw(indent) << ""; if( names != NULL_USER_OBJECT ) oss << escapeString(CHAR(STRING_ELT(names, i))) << ":"; oss << toJSON2( VECTOR_ELT(x,i), indent, indent_amount ); } break; default: Rf_error("unable to convert R type %i to JSON\n", TYPEOF(x)); } UNPROTECT(2); if( !container_closer.empty() ) { indent -= indent_amount; if( indent_amount > 0 ) { oss << "\n"; } oss << std::setw(indent) << ""; oss << container_closer; } return oss.str(); } extern "C" { SEXP toJSON( SEXP obj, SEXP indent ) { int indent_amount = INTEGER(indent)[0]; std::string buf = toJSON2( obj, 0, indent_amount ); SEXP p; PROTECT(p=Rf_allocVector(STRSXP, 1)); SET_STRING_ELT(p, 0, Rf_mkCharCE( buf.c_str(), CE_UTF8 )); UNPROTECT( 1 ); return p; } } rjson/src/register.c0000644000176200001440000000103213646044300014160 0ustar liggesusers#include #include #include #include #include "funcs.h" static const R_CMethodDef cMethods[] = { {"fromJSON", (DL_FUNC)&fromJSON, 3}, {"toJSON", (DL_FUNC)&toJSON, 1}, {NULL, NULL, 0}}; void R_init_rjson( DllInfo* info ) { R_registerRoutines( info, cMethods, NULL, NULL, NULL ); // TODO this should be changed to FALSE to disable // as per note on https://www.r-project.org/nosvn/R.check/r-devel-linux-x86_64-debian-clang/rjson-00check.html R_useDynamicSymbols( info, TRUE ); } rjson/src/funcs.h0000644000176200001440000000016413646044300013464 0ustar liggesusersSEXP fromJSON( SEXP str_in, SEXP unexpected_escape_behavior, SEXP simplify ); SEXP toJSON( SEXP obj, SEXP indent ); rjson/src/parser.c0000644000176200001440000005273313646044300013646 0ustar liggesusers#include #include #define DEFAULT_VECTOR_START_SIZE \ 10 /* allocate vectors this size to start with, then grow them as needed */ #define MAX_NUMBER_BUF 256 #define UNEXPECTED_ESCAPE_ERROR 1 /* issue an error and stop */ #define UNEXPECTED_ESCAPE_SKIP 2 /* skip the unexpected char and move to the next character */ #define UNEXPECTED_ESCAPE_KEEP 3 /* include the unexpected char as a regular char and continue */ #define MASKBITS 0x3F #define MASKBYTE 0x80 #define MASK2BYTES 0xC0 #define MASK3BYTES 0xE0 #define MASK4BYTES 0xF0 typedef struct ParseOptions { int unexpected_escape_behavior; int simplify_lists; } ParseOptions; SEXP parseValue( const char* s, const char** next_ch, const ParseOptions* parse_options ); SEXP parseNull( const char* s, const char** next_ch, const ParseOptions* parse_options ); SEXP parseTrue( const char* s, const char** next_ch, const ParseOptions* parse_options ); SEXP parseFalse( const char* s, const char** next_ch, const ParseOptions* parse_options ); SEXP parseString( const char* s, const char** next_ch, const ParseOptions* parse_options ); SEXP parseNumber( const char* s, const char** next_ch, const ParseOptions* parse_options ); SEXP parseArray( const char* s, const char** next_ch, const ParseOptions* parse_options ); SEXP parseList( const char* s, const char** next_ch, const ParseOptions* parse_options ); SEXP mkError( const char* format, ... ); int getUnexpectedEscapeHandlingCode( const char* s ); #define TRYERROR_CLASS "try-error" SEXP mkError( const char* format, ... ) { SEXP p, classp; char buf[256]; va_list args; va_start( args, format ); vsnprintf( buf, 256, format, args ); va_end( args ); PROTECT( p = allocVector( STRSXP, 1 ) ); SET_STRING_ELT( p, 0, mkCharCE( buf, CE_UTF8 ) ); PROTECT( classp = allocVector( STRSXP, 1 ) ); SET_STRING_ELT( classp, 0, mkChar( TRYERROR_CLASS ) ); SET_CLASS( p, classp ); UNPROTECT( 2 ); return p; } #define INCOMPLETE_CLASS "incomplete" SEXP addClass( SEXP p, const char* class ) { SEXP class_p; PROTECT( class_p = GET_CLASS( p ) ); unsigned int size = GET_LENGTH( class_p ); PROTECT( SET_LENGTH( class_p, size + 1 ) ); SET_STRING_ELT( class_p, size, mkChar( class ) ); SET_CLASS( p, class_p ); UNPROTECT( 2 ); return p; } // mkErrorWithClass only exists to work around rcheck enforcing PROTECT/UNPROTECT calls around all functions // which prevents one from doing: // return addClass( mkError( "no data to parse\n" ), INCOMPLETE_CLASS ); // which instead would become: // SEXP err = PROTECT(mkError( "no data to parse\n" )); // SEXP err_classed = addClass(err , INCOMPLETE_CLASS ); // UNPROTECT(1); // return err_classed; // to make matters worse, it's not possiblt to pass a va_list from this func onwards to mkError. SEXP mkErrorWithClass( const char* class, const char* format, ... ) { SEXP p, classp; char buf[256]; va_list args; va_start( args, format ); vsnprintf( buf, 256, format, args ); va_end( args ); PROTECT( p = allocVector( STRSXP, 2 ) ); SET_STRING_ELT( p, 0, mkCharCE( buf, CE_UTF8 ) ); PROTECT( classp = allocVector( STRSXP, 1 ) ); SET_STRING_ELT( classp, 0, mkChar( TRYERROR_CLASS ) ); SET_STRING_ELT( classp, 1, mkChar( class ) ); SET_CLASS( p, classp ); UNPROTECT( 2 ); return p; } int hasClass( SEXP p, const char* class ) { unsigned int i; SEXP class_p; PROTECT( class_p = GET_CLASS( p ) ); unsigned int size = GET_LENGTH( class_p ); for( i = 0; i < size; i++ ) { const char* s = CHAR( STRING_ELT( class_p, i ) ); if( strcmp( s, class ) == 0 ) { UNPROTECT( 1 ); return TRUE; } } UNPROTECT( 1 ); return FALSE; } int UTF8EncodeUnicode( unsigned long input, char* s ) { /* 0xxxxxxx */ if( input < 0x80 ) { s[0] = input; return 1; } /* 110xxxxx 10xxxxxx */ else if( input < 0x800 ) { s[0] = ( MASK2BYTES | ( input >> 6 ) ); s[1] = ( MASKBYTE | ( input & MASKBITS ) ); return 2; } /* 1110xxxx 10xxxxxx 10xxxxxx */ else if( input < 0x10000 ) { s[0] = ( MASK3BYTES | ( input >> 12 ) ); s[1] = ( MASKBYTE | ( ( input >> 6 ) & MASKBITS ) ); s[2] = ( MASKBYTE | ( input & MASKBITS ) ); return 3; } /* 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx */ else { s[0] = ( MASK4BYTES | ( input >> 18 ) ); s[1] = ( MASKBYTE | ( ( input >> 12 ) & MASKBITS ) ); s[2] = ( MASKBYTE | ( ( input >> 6 ) & MASKBITS ) ); s[3] = ( MASKBYTE | ( input & MASKBITS ) ); return 4; } } int readSequence( const char* s, int i, unsigned short* unicode ) { for( int j = 1; j <= 4; j++ ) if( ( ( s[i + j] >= 'a' && s[i + j] <= 'f' ) || ( s[i + j] >= 'A' && s[i + j] <= 'F' ) || ( s[i + j] >= '0' && s[i + j] <= '9' ) ) == FALSE ) { return j - 1; } char unicode_buf[5]; /* to hold 4 digit hex (to prevent scanning a 5th digit accidentally */ strncpy( unicode_buf, s + i + 1, 5 ); unicode_buf[4] = '\0'; sscanf( unicode_buf, "%hx", unicode ); return 4; } /* Attempts to parse a javascript escaped UTF-16 sequence into a unicode codepoint from a buffer. If the sequence is invalid no unicode value will be set. The function will return the number of read bytes as an indicator of whether input was successfully parsed */ int parseUTF16Sequence( const char* s, int i, unsigned long* unicode ) { int read_bytes = 0; unsigned short high; read_bytes += readSequence( s, i, &high ); if( read_bytes != 4 ) return read_bytes; /* check if this is a UTF-16 surrogate pair */ if( ( high >= 0xD800 && high <= 0xDBFF ) && ( s[i + read_bytes + 1] == '\\' && s[i + read_bytes + 2] == 'u' ) ) { read_bytes += 2; i += read_bytes; /* parse the next UTF-16 sequence, we are now pointing at the next 'u' */ unsigned short low; read_bytes += readSequence( s, i, &low ); if( read_bytes != 10 ) return read_bytes; *unicode = ( (unsigned long)( high - 0xD800 ) ) * 0x400 + ( low - 0xDC00 ) + 0x10000; /* Decode the surrogate pair into a unicode codepoint */ } else *unicode = high; return read_bytes; } int getUnexpectedEscapeHandlingCode( const char* s ) { if( s != NULL ) { if( strcmp( s, "skip" ) == 0 ) { return UNEXPECTED_ESCAPE_SKIP; } else if( strcmp( s, "keep" ) == 0 ) { return UNEXPECTED_ESCAPE_KEEP; } } /* in all other cases, just use the standard original error */ return UNEXPECTED_ESCAPE_ERROR; } SEXP fromJSON( SEXP str_in, SEXP unexpected_escape_behavior, SEXP simplify ) { const char* s = CHAR( STRING_ELT( str_in, 0 ) ); const char* next_ch = s; SEXP p, next_i, list; ParseOptions parse_options; parse_options.unexpected_escape_behavior = getUnexpectedEscapeHandlingCode( CHAR( STRING_ELT( unexpected_escape_behavior, 0 ) ) ); parse_options.simplify_lists = LOGICAL( simplify )[0]; PROTECT( p = parseValue( s, &next_ch, &parse_options ) ); PROTECT( list = allocVector( VECSXP, 2 ) ); PROTECT( next_i = allocVector( INTSXP, 1 ) ); SET_VECTOR_ELT( list, 0, p ); INTEGER( next_i )[0] = next_ch - s; SET_VECTOR_ELT( list, 1, next_i ); UNPROTECT( 3 ); return list; } SEXP parseValue( const char* s, const char** next_ch, const ParseOptions* parse_options ) { /* ignore whitespace */ while( *s == ' ' || *s == '\t' || *s == '\n' || *s == '\r' ) s++; if( *s == '{' ) { return parseList( s, next_ch, parse_options ); } if( *s == '[' ) { return parseArray( s, next_ch, parse_options ); } if( *s == '\"' ) { return parseString( s, next_ch, parse_options ); } if( ( *s >= '0' && *s <= '9' ) || *s == '-' ) { return parseNumber( s, next_ch, parse_options ); } if( *s == 't' ) { return parseTrue( s, next_ch, parse_options ); } if( *s == 'f' ) { return parseFalse( s, next_ch, parse_options ); } if( *s == 'n' ) { return parseNull( s, next_ch, parse_options ); } if( *s == '\0' ) { return mkErrorWithClass( INCOMPLETE_CLASS, "no data to parse\n" ); } return mkError( "unexpected character '%c'\n", *s ); } SEXP parseNull( const char* s, const char** next_ch, const ParseOptions* parse_options ) { if( strncmp( s, "null", 4 ) == 0 ) { *next_ch = s + 4; return R_NilValue; } /* TODO should really look at subset of "null" (e.g. "nul", "nu" ), so that "not" fails before reaching 4 digits */ if( strlen( s ) < 4 ) { return mkErrorWithClass( INCOMPLETE_CLASS, "parseNull: expected to see 'null' - likely an unquoted string " "starting with 'n', or truncated null.\n" ); } return mkError( "parseNull: expected to see 'null' - likely an unquoted string starting with 'n'.\n" ); } SEXP parseTrue( const char* s, const char** next_ch, const ParseOptions* parse_options ) { SEXP p; if( strncmp( s, "true", 4 ) == 0 ) { *next_ch = s + 4; PROTECT( p = NEW_LOGICAL( 1 ) ); LOGICAL( p )[0] = TRUE; UNPROTECT( 1 ); return p; } if( strlen( s ) < 4 ) { return mkErrorWithClass( INCOMPLETE_CLASS, "parseTrue: expected to see 'true' - likely an unquoted string " "starting with 't', or truncated true.\n" ); } return mkError( "parseTrue: expected to see 'true' - likely an unquoted string starting with 't'.\n" ); } SEXP parseFalse( const char* s, const char** next_ch, const ParseOptions* parse_options ) { SEXP p; if( strncmp( s, "false", 5 ) == 0 ) { *next_ch = s + 5; PROTECT( p = NEW_LOGICAL( 1 ) ); LOGICAL( p )[0] = FALSE; UNPROTECT( 1 ); return p; } if( strlen( s ) < 5 ) { return mkErrorWithClass( INCOMPLETE_CLASS, "parseFalse: expected to see 'false' - likely an unquoted string " "starting with 'f', or truncated false.\n" ); } return mkError( "parseFalse: expected to see 'false' - likely an unquoted string starting with 'f'.\n" ); } SEXP parseString( const char* s, const char** next_ch, const ParseOptions* parse_options ) { SEXP p, error_p; /* assert( s[ 0 ] == '"' ); */ int i = 1; /* skip the start quote */ int buf_size = 256; char* buf = (char*)malloc( buf_size ); buf[0] = '\0'; int buf_i = 0; if( buf == NULL ) { error_p = mkError( "error allocating memory in parseString" ); goto error; } if( sizeof( char ) != 1 ) { error_p = mkError( "parseString sizeof(char) != 1" ); goto error; } int copy_start = i; int bytes_to_copy; while( 1 ) { while( s[i] != '\\' && s[i] != '"' && s[i] != '\0' ) i++; if( s[i] == '\0' ) { error_p = mkErrorWithClass( INCOMPLETE_CLASS, "unclosed string\n" ); goto error; } if( s[i] == '\\' ) { if( s[i + 1] == '\0' ) { error_p = mkErrorWithClass( INCOMPLETE_CLASS, "unclosed string\n" ); goto error; } /* TODO couldn't this be caught above (where s[ i ] == '\0') */ if( s[i + 2] == '\0' ) { error_p = mkErrorWithClass( INCOMPLETE_CLASS, "unclosed string\n" ); goto error; } /* grow memory */ if( buf_size - 1 <= i ) { buf_size = 2 * ( buf_size + i ); buf = realloc( buf, buf_size ); if( buf == NULL ) { error_p = mkError( "error allocating memory in parseString" ); goto error; } } /* save string chunk from copy_start to i-1 */ bytes_to_copy = i - copy_start; if( bytes_to_copy > 0 ) { memcpy( buf + buf_i, s + copy_start, bytes_to_copy ); buf_i += bytes_to_copy; } i++; /* save s[i] */ switch( s[i] ) { case '"': case '\\': case '/': buf[buf_i] = s[i]; break; case 'b': buf[buf_i] = '\b'; break; case 'f': buf[buf_i] = '\f'; break; case 'n': buf[buf_i] = '\n'; break; case 'r': buf[buf_i] = '\r'; break; case 't': buf[buf_i] = '\t'; break; case 'u': ; /* semi-colon required to prevent windows-compile warning related to var declaration inside case statement */ unsigned long unicode; int read_bytes = parseUTF16Sequence( s, i, &unicode ); if( read_bytes != 4 && read_bytes != 10 ) { /* In case of surrogate pairs read_bytes will be 10 */ error_p = mkError( "unexpected unicode escaped char '%c'; 4 hex digits should " "follow the \\u (found %i valid digits)", s[i + read_bytes + 1], read_bytes ); goto error; } i += read_bytes; /* skip the UTF16 sequence(s) - actually point to last digit, which is then incremented outside of switch */ buf_i += UTF8EncodeUnicode( unicode, buf + buf_i ) - 1; /* -1 due to buf_i++ out of loop */ break; default: if( parse_options->unexpected_escape_behavior == UNEXPECTED_ESCAPE_SKIP ) { /* skip the character (by decreasing the buffer index as it will be increased below. in actuality we dont want it to change). */ buf_i--; Rf_warning( "unexpected escaped character '\\%c' at pos %i. Skipping value.", s[i], i ); } else if( parse_options->unexpected_escape_behavior == UNEXPECTED_ESCAPE_KEEP ) { /* treat a "\y" as simply 'y' */ buf[buf_i] = s[i]; Rf_warning( "unexpected escaped character '\\%c' at pos %i. Keeping value.", s[i], i ); } else { /* case of UNEXPECTED_ESCAPE_ERROR, or any other bad enum values */ error_p = mkError( "unexpected escaped character '\\%c' at pos %i", s[i], i ); goto error; } break; } i++; /* move to next char */ copy_start = i; buf_i++; } else { /* must be a quote that caused us the exit the loop, first, save remaining string data */ if( buf_size - 1 <= i ) { /* grow memory */ buf_size = 2 * ( buf_size + i ); buf = realloc( buf, buf_size ); if( buf == NULL ) { error_p = mkError( "error allocating memory in parseString" ); goto error; } } bytes_to_copy = i - copy_start; if( bytes_to_copy > 0 ) { memcpy( buf + buf_i, s + copy_start, bytes_to_copy ); buf_i += bytes_to_copy; } buf[buf_i] = '\0'; break; /* exit the loop */ } } *next_ch = s + i + 1; PROTECT( p = allocVector( STRSXP, 1 ) ); SET_STRING_ELT( p, 0, mkCharCE( buf, CE_UTF8 ) ); free( buf ); UNPROTECT( 1 ); return p; error: if( buf ) { free( buf ); } return error_p; } void setArrayElement( SEXP array, int unsigned i, SEXP val ) { if( IS_LOGICAL( array ) ) LOGICAL( array )[i] = LOGICAL( val )[0]; else if( IS_INTEGER( array ) ) INTEGER( array )[i] = INTEGER( val )[0]; else if( IS_NUMERIC( array ) ) REAL( array )[i] = REAL( val )[0]; else if( IS_CHARACTER( array ) ) SET_STRING_ELT( array, i, STRING_ELT( val, 0 ) ); /* TODO fixme val must be a single char, not vector */ /* else if( IS_COMPLEX( array ) ) COMPLEX( array [ i ] = COMPLEX( val )[ 0 ]; */ else Rprintf( "unsupported SEXPTYPE: %i\n", TYPEOF( array ) ); } SEXP parseArray( const char* s, const char** next_ch, const ParseOptions* parse_options ) { PROTECT_INDEX array_index = -1; SEXP p = NULL, array = NULL; /* assert( *s == '[' ) */ s++; /* move past '[' */ int is_list = FALSE; SEXPTYPE p_type = -1; unsigned int array_i = 0; int trailing_comma = 0; PROTECT_WITH_INDEX( array = R_NilValue, &array_index ); while( 1 ) { /* ignore whitespace */ while( *s == ' ' || *s == '\t' || *s == '\n' || *s == '\r' ) s++; if( *s == '\0' ) { UNPROTECT( 1 ); /* array */ return mkErrorWithClass( INCOMPLETE_CLASS, "incomplete array\n" ); } if( *s == ']' ) { if( trailing_comma ) { UNPROTECT( 1 ); /* array */ return mkErrorWithClass( INCOMPLETE_CLASS, "trailing comma found in array\n" ); } *next_ch = s + 1; UNPROTECT( 1 ); /* array */ return allocVector( VECSXP, 0 ); } trailing_comma = 0; PROTECT( p = parseValue( s, next_ch, parse_options ) ); s = *next_ch; /* check p for errors */ if( hasClass( p, TRYERROR_CLASS ) == TRUE ) { UNPROTECT( 2 ); /* p, array */ return p; } if( array == R_NilValue ) { if( !parse_options->simplify_lists ) { p_type = VECSXP; is_list = TRUE; } else if( GET_LENGTH( p ) != 1 ) { p_type = VECSXP; is_list = TRUE; } else if( TYPEOF( p ) == VECSXP ) { p_type = VECSXP; is_list = TRUE; } else { p_type = TYPEOF( p ); is_list = FALSE; } REPROTECT( array = allocVector( p_type, DEFAULT_VECTOR_START_SIZE ), array_index ); } /* check array type matches */ if( is_list == FALSE && ( TYPEOF( p ) != TYPEOF( array ) || GET_LENGTH( p ) != 1 ) ) { REPROTECT( array = coerceVector( array, VECSXP ), array_index ); is_list = TRUE; } /* checksize */ unsigned int array_size = GET_LENGTH( array ); if( array_i >= array_size ) { REPROTECT( SET_LENGTH( array, array_size * 2 ), array_index ); } /* save element */ if( is_list == TRUE ) SET_VECTOR_ELT( array, array_i, p ); else setArrayElement( array, array_i, p ); UNPROTECT( 1 ); /* p */ p = NULL; array_i++; /* ignore whitespace */ while( *s == ' ' || *s == '\t' || *s == '\n' || *s == '\r' ) s++; if( *s == '\0' ) { UNPROTECT( 1 ); /* array */ return mkErrorWithClass( INCOMPLETE_CLASS, "incomplete array\n" ); } /* end of array */ if( *s == ']' ) { break; } /* more elements to come */ if( *s == ',' ) { s++; trailing_comma = 1; } else if( *s == '\0' ) { UNPROTECT( 1 ); /* array */ return mkErrorWithClass( INCOMPLETE_CLASS, "incomplete array\n" ); } else { UNPROTECT( 1 ); /* array */ return mkError( "unexpected character: %c\n", *s ); } } /* trim to the correct size - no need to protect here */ SET_LENGTH( array, array_i ); *next_ch = s + 1; UNPROTECT( 1 ); /* array */ return array; } SEXP parseList( const char* s, const char** next_ch, const ParseOptions* parse_options ) { PROTECT_INDEX list_index, list_names_index; SEXP key = NULL, val = NULL, list, list_names; /* assert( *s == '{' ) */ s++; /* move past '{' */ unsigned int list_i = 0; PROTECT_WITH_INDEX( list = allocVector( VECSXP, DEFAULT_VECTOR_START_SIZE ), &list_index ); PROTECT_WITH_INDEX( list_names = allocVector( STRSXP, DEFAULT_VECTOR_START_SIZE ), &list_names_index ); while( 1 ) { /* ignore whitespace */ while( *s == ' ' || *s == '\t' || *s == '\n' || *s == '\r' ) s++; if( *s == '\0' ) { UNPROTECT( 2 ); return mkErrorWithClass( INCOMPLETE_CLASS, "incomplete list\n" ); } if( *s == '}' && list_i == 0 ) { UNPROTECT( 2 ); *next_ch = s + 1; return allocVector( VECSXP, 0 ); } /* get key */ if( *s != '\"' ) { UNPROTECT( 2 ); return mkError( "unexpected character \"%c\"; expecting opening string quote (\") for key value\n", *s ); } PROTECT( key = parseString( s, next_ch, parse_options ) ); s = *next_ch; /* check key for errors */ if( hasClass( key, TRYERROR_CLASS ) == TRUE ) { UNPROTECT( 3 ); return key; } if( IS_CHARACTER( key ) == FALSE ) { UNPROTECT( 3 ); return mkError( "list keys must be strings\n" ); } /* ignore whitespace */ while( *s == ' ' || *s == '\t' || *s == '\n' || *s == '\r' ) s++; if( *s != ':' ) { UNPROTECT( 3 ); if( *s == '\0' ) return mkErrorWithClass( INCOMPLETE_CLASS, "incomplete list - missing :\n" ); return mkError( "incomplete list - missing :\n" ); } s++; /* move past ':' */ /* ignore whitespace */ while( *s == ' ' || *s == '\t' || *s == '\n' || *s == '\r' ) s++; if( *s == '\0' ) { UNPROTECT( 3 ); return mkErrorWithClass( INCOMPLETE_CLASS, "incomplete list\n" ); } /* get value */ PROTECT( val = parseValue( s, next_ch, parse_options ) ); s = *next_ch; /* check val for errors */ if( hasClass( val, TRYERROR_CLASS ) == TRUE ) { UNPROTECT( 4 ); return val; } /* checksize */ unsigned int list_size = GET_LENGTH( list ); if( list_i >= list_size ) { REPROTECT( SET_LENGTH( list, list_size * 2 ), list_index ); REPROTECT( SET_LENGTH( list_names, list_size * 2 ), list_names_index ); } /* save key and value */ SET_STRING_ELT( list_names, list_i, STRING_ELT( key, 0 ) ); SET_VECTOR_ELT( list, list_i, val ); UNPROTECT( 2 ); /* key, val */ key = NULL; val = NULL; list_i++; /* ignore whitespace */ while( *s == ' ' || *s == '\t' || *s == '\n' || *s == '\r' ) s++; if( *s == '\0' ) { UNPROTECT( 2 ); return mkErrorWithClass( INCOMPLETE_CLASS, "incomplete list\n" ); } /* end of list */ if( *s == '}' ) { break; } /* more elements to come */ if( *s == ',' ) { s++; } else { UNPROTECT( 2 ); return mkError( "unexpected character: %c\n", *s ); } } /* trim to the correct size */ REPROTECT( SET_LENGTH( list, list_i ), list_index ); REPROTECT( SET_LENGTH( list_names, list_i ), list_names_index ); /* set names */ setAttrib( list, R_NamesSymbol, list_names ); *next_ch = s + 1; UNPROTECT( 2 ); return list; } SEXP parseNumber( const char* s, const char** next_ch, const ParseOptions* parse_options ) { SEXP p; const char* start = s; char buf[MAX_NUMBER_BUF]; int digits_before_period = 0; int exponent_digits = 0; if( *s == '-' ) { s++; } if( *s == '\0' ) { return mkErrorWithClass( INCOMPLETE_CLASS, "parseNumer error\n" ); } if( *s == '0' ) { digits_before_period++; s++; if( ( *s >= '0' && *s <= '9' ) || *s == 'x' ) { return mkError( "hex or octal is not valid json\n" ); } } while( *s >= '0' && *s <= '9' ) { digits_before_period++; s++; } if( *s == '.' ) { if( digits_before_period == 0 ) { return mkError( "numbers must start with a digit\n" ); } s++; while( *s >= '0' && *s <= '9' ) { s++; } } /* exponential */ if( *s == 'e' || *s == 'E' ) { s++; if( *s == '+' || *s == '-' ) { s++; } while( *s >= '0' && *s <= '9' ) { s++; exponent_digits++; } if( exponent_digits == 0 ) { return mkError( "missing exponent\n" ); } } unsigned int len = s - start; if( len >= MAX_NUMBER_BUF ) { return mkError( "buffer issue parsing number: increase MAX_NUMBER_BUF (in parser.c) " "current value is %i\n", MAX_NUMBER_BUF ); } /* copy to buf, which is used with atof */ strncpy( buf, start, len ); buf[len] = '\0'; *next_ch = s; PROTECT( p = allocVector( REALSXP, 1 ) ); REAL( p )[0] = atof( buf ); UNPROTECT( 1 ); return p; } rjson/NAMESPACE0000644000176200001440000000004713646044300012625 0ustar liggesusersexport(toJSON, newJSONParser, fromJSON)rjson/inst/0000755000176200001440000000000014672066043012372 5ustar liggesusersrjson/inst/rpc_server/0000755000176200001440000000000013646044300014534 5ustar liggesusersrjson/inst/rpc_server/server.r0000644000176200001440000000464613646044300016237 0ustar liggesusers#!/usr/bin/r --slave library( "rjson" ) library( "utils" ) #load in any extra sources source_files <- Sys.getenv( "R_SERVER_SOURCE" ) if( source_files != "" ) { source_files <- strsplit( source_files, ":" )[[1]] for( s in source_files ) source( s ) } #rpc is an R object corresponding to the parsed JSON-RPC call #returns: a JSON string with the results or error do.rpc <- function( rpc ) { rpc$params <- as.list( rpc$params ) result <- try( do.call( rpc$method, rpc$params ), silent = TRUE ) if( class( result ) == "try-error" ) { #TODO JSON-RPC defines several erorrs (call not found, invalid params, and server error) #if a call exists but fails, I am sending a procedure not found - when really it was found #but had an internal error. the data contains the actual error from R rpc_result <- list( jsonrpc = "2.0", error = list( code = -32601, message = "Procedure not found.", data = as.character( result ) ), id = rpc$id ) } else { #RPC call suceeded rpc_result <- list( jsonrpc = "2.0", result = result, id = rpc$id ) } #return the JSON string ret <- toJSON( rpc_result ) ret <- paste( ret, "\n", sep="" ) return( ret ) } #requires R 2.5.0 process_stdin <- file("stdin", blocking = T, open = "rb" ) json_parser <- newJSONParser() while( TRUE ) { #TODO read in data in larger chunks #when n > 1, readBin sometimes waits until a complete block of n chars is read - piping a flush doesn't always work when n > 1 s <- readBin( process_stdin, what = raw(), n = 1 ) #catch an OEF if( length( s ) == 0 ) break s <- rawToChar( s ) #add input to parser buffer json_parser$addData( s ) #Optimization: JSON RPC objects MUST terminate with a `}' - no need to check if the object can be parsed otherwise (since it can't) while( s == "}" ) { #try to extract any JSON objects rpc <- try( json_parser$getObject(), silent = TRUE ) if( class( rpc ) == "try-error" ) { #an error occured cat( '{"jsonrpc": "2.0", "error": {"code": -32700, "message": "Parse error"}, "id": null}' ) #reset JSON parser json_parser <- newJSONParser() #clear anything on the input seek( process_stdin, where = 0, origin = "end" ) } else { #not enough data is in the buffer to extract a complete JSON object if( is.null( rpc ) ) break #a valid JSON object was extracted ret <- do.rpc( rpc ) cat( ret ) } } } #must quit here - otherwise, we get dropped into an R shell q() rjson/inst/rpc_server/start_server.bat0000644000176200001440000000046313646044300017752 0ustar liggesusers#R reads in R_PROFILE first - which will start up the server.r script, which then sources in anything from R_SERVER_SOURCE #R_SERVER_SOURCE is a colon delimited list of user source files to read in set R_PROFILE=server.r set R_SERVER_SOURCE=%1 set Path=.;C:\Program Files\R\R-2.9.0\bin\ r --slave --silent rjson/inst/rpc_server/some_script.r0000644000176200001440000000030713646044300017246 0ustar liggesusersrequire( "stats", quietly = TRUE ) user_func <- function( times ) { rep( "I am made of sugar", times ) } fib <- function( n ) { if( n < 2 ) return( 1 ) return( fib( n - 1 ) + fib( n - 2 ) ) } rjson/inst/rpc_server/start_server0000644000176200001440000000043313646044300017202 0ustar liggesusers#!/bin/bash #R reads in R_PROFILE first - which will start up the server.r script, which then sources in anything from R_SERVER_SOURCE #R_SERVER_SOURCE is a colon delimited list of user source files to read in export R_PROFILE=server.r export R_SERVER_SOURCE=$1 r --slave --silent rjson/inst/changelog.txt0000644000176200001440000000576113646044300015063 0ustar liggesusers0.2.20: Jan 6, 2022 fixed crash on parsing invalid escapped characters added support for 4-byte utf8 characters simplified PROTECT/UNPROTECT logic to appease rchk warnings 0.2.17: Jun 25, 2017 Fixed examples that refferenced True/False instead of TRUE/FALSE 0.2.16: Nov 30, 2014 Added simplify=TRUE option to fromJSON, when True, lists are simplified into vectors (default is backwards compatible); when set to False, all json-encoded lists are kept as R lists. 0.2.15: Nov 2, 2014 bugfix: toJSON was not escaping control characters 0-0x1f, and 0x7f. (Thanks to Early Ehlinger for patch) 0.2.14: June 10, 2014 Fixed bug where fromJSON("{\"a\": 0,}") returned a list() rather than raising an error regarding the trailing comma. (Thanks Stavros Macrakis for the report) 0.2.12: Jan 14, 2013 Added unexpected.escape to the "C" fromJSON method. This allows users to parse invalid json containing bad escaped data. Defaults to raising an error as the old version did. Also added position to error/warning messages 0.2.11: Nov 29, 2012 Fixed toJSON bug where factors were saved as integers rather than strings 0.2.10: Sep 30, 2012 Fixed precission issue in toJSON's C implementation where doubles only had 6 digits (as the std::iostream default specified). Now it should be the full precission. (Thanks Michael) Fixed issue where toJSON(..., "R") never passed the "R" value on recursive calls (so it ended up calling the (potentially buggy) C version 0.2.9: July 22, 2012 Fixed vector toJSON bug where toJSON(numeric(0)) would return "" instead of "[]" (thanks Diego Forteza) 0.2.8: Mar 18, 2012 Changed ordering of includes in dump.cpp to fix compilation issue on OSX (thanks Rob) 0.2.7: Mar 12, 2012 rewrote toJSON to use a C implementation which is much faster. Thanks to Simon for the reminder. 0.2.6: Oct 17, 2011 bufix: fromJSON('["A",["B","C"]]') incorrectly returned "A" "B" (thanks Brad Friedman for reporting it) bufix: fromJSON('["A", null]', method="R") was using NA rather than NULL (missed case from version 0.1.6) 0.2.4: June 26, 2011 bugfix: too hasty with the previous release, and introduced a bug for characters greater than 512 bytes (was blindly doubling the buffer size when sometimes it needed more) 0.2.4: June 25, 2011 bugfix: memory issue when parsing strings with mostly (or only) escaped characters greater than 256bytes 0.2.3: Dec 12, 2010 bugfix: allow '\r' to b whitespace rather than just use '\n' 0.2.2: Nov 29, 2010 bugfix: protection stack overflow - now uses PROTECT_WITH_INDEX() rather pushing far too many protects on to the stack bugfix: added missing protects to SET_LENGTH calls 0.2.1: unknown (missing entry) 0.2.0: unknown (missing entry) introduced a C based parser for reading JSON 0.1.7: August 28, 2009 fixed toJSON bug: named vectors are now treated as json lists 0.1.6: August 23, 2009 fixed toJSON bug: NA, NaN, Inf, -Inf are not converted to strings fromJSON: null used to be returned as NA, but now is returned as NULL (but will still have the associated key displayed in the list) rjson/inst/doc/0000755000176200001440000000000014672066043013137 5ustar liggesusersrjson/inst/doc/json_rpc_server.Rnw0000644000176200001440000000262713646044300017031 0ustar liggesusers\documentclass[letter]{article} %\VignetteIndexEntry{JSON RPC server for R} %\VignettePackage{rjson} \begin{document} \title{JSON RPC server for R} \author{Alex Couture-Beil} \maketitle \section{Introduction} Remote proceedure calls (RPC) provide inter-process communication which allow programs to call other program's subroutines. JSON-RPC is a RPC protocol built on top of JSON. JSON-RPC provides a nice way to interface different languages. Sample code for creating an JSON-RPC server for R is supplied with the rjson library. For this example, a client wishing to execute R code will first execute a new instance of R, and will communicate over standard IO (stdin/stdout). After the client executes any number of calls, it will terminate the R session with an end of file (ctrl-D). \section{Sample Code} Sample code can be found in the {\it ..../library/rjson/rpc\_server} directory. The server is started with {\it ./start\_server} (unix), or with {\it start\_server.bat} (windows). An optional paramater specifies a user supplied source file to be loaded by the server, thus allowing the client to execute some user supplied functions. Note that this code posses serious security risks if the client accecpts input from anyone. (i.e. the client redirects IO from some tcp port to the R json-rpc interface). If this is the case, you'll likely want to avoid allowing anyone to pass anything to eval. \end{document} rjson/inst/doc/json_rpc_server.pdf0000644000176200001440000011047414672066043017044 0ustar liggesusers%PDF-1.5 %ÐÔÅØ 3 0 obj << /Length 1380 /Filter /FlateDecode >> stream xÚ…WKÛ6¾çWø XqŇ^Ç$m€ä›½%EÁ•è5YD*ÎþûÎp(ÙFÜv&9ä¼¾yiß>¾º/믘à…Ú=îwBäLˆbWò‚ɦÚ=v»¯ÉÇ/Ÿ?¥™ä2yøãmœ™¤¢LÌLçý7éŸAj³ãœ5E!Pª¬YÓ»LÔ¬®kú¦7?d¼¿Ì&{klÜ»L²²„×’ÉJÑë/fò昊*yJ3ø z——w¸©‘ Eª‹|Ç“ª ª3.8«±Ë”`M^8žfœçyòaH%Oü<¢ñI·´ÞŽCô Ú5¬)E‰Rr°†³š7Äþ`Ž£7¨X$2‹:iSžÓ#Douß;Ú~Ë‹ƒ…Ÿy€å‡íâc;àÙ›9ÛĹÛ$ƒïË`[L„žœ¶E¾=Ô}àc {2¶ºNèašŸg}DѼJüH+ÚJ÷£?PH«õéëøž,O3ËƱ4S² ©‘Ŭ¨ßj¶ÑA”o׎¨X¨äi±½§-¹W€uS$ìiEeŒî.ôÂÅžŽî5]^†v'| ñçe•Nô{½¾íì·\J3›A÷7AÕÃó¢ŸU­’/ú8õÀ®T‰ÃvñJC)@y6¼á™Èz êÙ¤R]Q~_1?ÐÆ£[¦©·¦»²­$ÛNÖ0:*`ÒfþÛ!ª¸ííӬ痴– Ú2ßã>è ,AìÌÏàÔ—*‰-(%Àè|²î@.!ï¸ršvñQ5.å(7Ð<Ù €W³ÃD(ê³Ià2˜]ÚÁy=´ñ6¤¬wt«‡Ž«h¨¨‹¨NLäÁBQA-­ì!}ð@Ÿ‰ˆò;=GA>ß²KÛùÎ÷ð ¥5°¹HÞì}(¥BRd!®àË衣[òí…a¿‹Ÿt›e2z+±nØ»è´õĺú,1­v@7oØNVIìÙ°(È=稷’w:RL€TÆrƪ7ë¾È[?÷Ùo„ÀN Ú%´`%H»ˆ-x­YVÉ;ð&¶bóÿ]xãlŠÐ}Ïe(ÁîFmèê~\‚M(ü@BÈ\~¡‹9+aŠå¤‹Áß=–NZðÊç>TÔýŒ¹4¥Ù¿°t!࿚Íaì•zÕÙÙ´~ÜJ°ëÉð¯j˜hÔu ¨)Ô¡)ˆªMWHÐÙC€CEûÕF2‘ŸÝ¸<ÿnk©X¥ªõ9FfÎOŒéÂØ„>ñêÊ’‰’¯ü—ÊØS€ÎßPZ ]*=Ù¡£±å¶|pš²©¸ç †ºØ8á`Ô=& £KSª"q%A‹]…zÃLËâèYyîªt—9ô°å:ÐÃä€õœXpèG )Øa>ÚГXÐ ÂãÝáf%ž|G%Øb§r±û8ÃC§EJ,ÝÐñ»#*ºc½nÝn<ÆÝâVçXög§áz¿ á#ÈæP¿R×óå}ûÀòí×]˜ý8å.ÊŽü蜉÷à«—íÐ.3´­8–UÌÖ}—v¿Ê޲®º'œuÛšvòëóaZhVgWVGŒ÷óx$‡õ@ú²q0Œ*feëéß³J¤†Ê×цBXWáÅ4İh!˜£Š:ëˆíJ ~â¶·2åêk%œ²+:1°[WR“ã©Ãa.óà;´¼c®zû=¤_ÿBgúXÚ’ ¥Œ´ê8(Ýv‘t¹8\#À×& ßµ7‹<þs\óøGZ@­ö1!ˆIüï€×%k¸\¿çáîÕï¯þçýY endstream endobj 11 0 obj << /Length 99 /Filter /FlateDecode >> stream xÚM‰»@@DûùŠù®e­h=[H¨¢B© ü½x7¦8“œc×zÔtTÌп/ä 0CG·~—ú ‰…4Ô¤ †Ø’벤J© [E¯ƒÍx>Û_?îÈ-j\•]** endstream endobj 12 0 obj << /Length 93 /Filter /FlateDecode >> stream xÚ32Õ31S0P°bCK •bÈUÈâÄ@tr.—“'—~¸‚%—¾ˆðôU()*MåÒw pV0äÒwQˆ6T0ˆåòtQàc°o¨oø u 6 \®ž\\TtÓ endstream endobj 13 0 obj << /Length 164 /Filter /FlateDecode >> stream xÚ31Ò31Q0P0TÐ52T05T03RH1ä*ä2±Š(XC¥’s¹œ<¹ôÃL,¹ô=€â\úž¾ %E¥©\úNÎ †\ú. ц ±\ž. ÀØ€L1C)0ÉÀ¡ø „’PÊB@¨õB€˜|‹P“ÙðX5Ù€X °:Õ¬NÇcV§† ² \®ž\\Á-› endstream endobj 14 0 obj << /Length 212 /Filter /FlateDecode >> stream xÚMÎ?ŠÂ@ðoH1ðš\@È»€Nbj£àº°)´²+µ´P´ $`‘No°g‰7ñ)S„dgFA›ï/ê÷¢ˆ}q7`Âo:PhŠ>‡Ãgg³§iLjÉaDêG—IÅ¿|:žw¤¦ó/HÍx°¿¦xÆ@@6/ïcGÇÄP‰Âà”¨!×Rˆ^!ª'“ÌâTH3=™â,ÑšÅæ×R˜;÷â…g¹X²Kž%Hs$h%Æ¢uõg·+> stream xÚMÏ¿ŠÂ@Çñ‘-¦Ù70óÞ&a…ÀÀ‚VWˆÕ¥…rWšGË£lgé–[„è¬QsŧùMó¾yK)¦!õêúJp©á1¦Á°¹|îpœ£þ Ô žóŒ:_Ð÷ág‹z¼œP‚zJë„â æS‚ º¶àÄŽÿÔ¬jußkÉÀzçäEª’¥òÌ «¬°Q)Ü]ÑÈx’îÄŽ/ÊÕ¬eQPú»¬xÏÑžc=þrÔ_ÇÁ»°0’%t£ÿÀà,ÇÞ!_‰ endstream endobj 16 0 obj << /Length 186 /Filter /FlateDecode >> stream xÚ]ο ‚PðOîœÅGð¼@]ÿ éb`955DS5¡öfö&>‚ã$»)5üÎð}œÃñü‘Ë6+X8!Cо¡ %j¡•P¦f•¢¶J`Rôò¢Ûþjµ×Ÿæ—­ùZzê FB”!Ì‚ž¥_©ºC4KhEoçM> endstream endobj 17 0 obj << /Length 193 /Filter /FlateDecode >> stream xÚmÎ=‚@à!$¯á¼ èòS $Љ&ZY+µ´Ðh²…‘åfx“=%-l,¾f&™LCö9áQÀQÂÑ„)LLès›ý‰¦‰ ‡ ‰…‰IK¾^nGÓÕŒ9oöwTä ”€Ý×pŸ< ÑAZ-¤Ý@:ÒÔh½M¦,ÃÑ™òTYõ(ûÖPà zãõG÷ãߨ IaévíÁU.R8Uk®èÏÍ ZÓ¢ B endstream endobj 18 0 obj << /Length 187 /Filter /FlateDecode >> stream xÚ…Í1 Â@ÐR,Lá^@ܹ€nŒ¦¢‚)­,ÄJ-m5âÅâMö)Sq79€3¯øÌ?ŠÃ<æ~ÈQÂq̇.ì6µŸý‰ÒŒô†£€ôžIgK¾]ïGÒéjÊ!éoCv”Í^a JH˸ìçø;%ü¢‡ŽB·‘Xœ[O”ë ÔŽgUð[¥kM•4FF~ŒúêÕxçÊÏ•€ÓìBTð hžÑš~; 9õ endstream endobj 19 0 obj << /Length 215 /Filter /FlateDecode >> stream xÚ•Î;jÃ@à_¨0La]ÀDsyõˆ¬Á?À* I•"¤Š]¦ˆI Eu4ÅGXw[á‘× Æ¾f†™Ò|ø8☣Œ£¤à,æ<çuBß”¥Ò޹HÝìó‹¦%©7ÎRRK*Wü³ýÝš¾Ì8!5ç÷„ã*ç  /&bw¥ÜUa-« pÐð ¿6èu<ƒ@ôŃøÏâÉ×gè9{+p+tjkâܼ]]´GËsŒåw´¼¡QI\§•˜6¨Ñ†€ÿrYÛtZ”ôJ'L{JÓ endstream endobj 20 0 obj << /Length 172 /Filter /FlateDecode >> stream xÚ}Ì1 Â@…á‹ÀæbæºÙ…è ‚#˜BÐÊB¬ÔRPQH!š£å(9‚eŠÝÙµ¾êð”(E!¨/I )ÒtxA©M )»eÂ8E±!©Q,LF‘.év½QÄ«I m%…;L¿ð>?9›:À^ÖÓj¬šµœŠµ7óœ’ùNÁ‚ÿ÷Ö=¨»Öj •‘Av†G ¹Êç)®ñ ®E‡ endstream endobj 21 0 obj << /Length 225 /Filter /FlateDecode >> stream xÚUϱjÂPà?ÜáÂâ ˆ9/Pc0$Bj¡;u(ÚŽ…V2H¼à‹åQî#dtí¹É`]¾á¿çÿáÆÉ8ÉxÂ)?DÏxšògD¿GNxšõ/ß4/)|å8¢ðYb Ëo7»/ çëKºä7é¼S¹dÏâ蓺øù@7=æÊbTªEV´žÓŠUш?âI4›öà´õMÔÐâÚç;žØ@ê½A¯êmQSuj#Síêõ}7µ÷ÝÈ~Ô9ìÌÜ`^¹©ÀBË× è©¤ú’tUž endstream endobj 22 0 obj << /Length 190 /Filter /FlateDecode >> stream xÚ=ο ‚PðO„³ÜGð¼@]ÿAµ(˜AAM ÑT Em¢B/foâ#ÜÑA´«BÃßóÀ›;¼â™ËÇþ‚¯.=È÷tè°¿œ6—;Å)É#ûÉ­ŽI¦;~=ß7’ñ~Í.É„O.;gJ Àì+ˆ¯‚92´È =™ ¡¥Y5"¡ÙÕ$*GE1À_ßkÐMŒAÛŽÌfb)­n!ê ¢Êa—!"„ºt¨5¾}€6)è•GÏ endstream endobj 23 0 obj << /Length 238 /Filter /FlateDecode >> stream xÚ]Ï¿NÃ0ð/Êé!÷Òš?"R)èÄ€˜ZF¤‚@ê€j?šyó=D ç¤$¶ôî|§Ïjr¢ŸÊ=.ÏYMxzÁ«’ÞH•]õlºo-_iVSñȪ¤âNêTÔ÷üñþùBÅìᆥ:ç'z¦zÎÈLfÜU¸ò›/à2¸k`£­¸Ö&[ˆ~‡ÜÀõ6bòÓùÝ‘Tƒ~4óЃ{ÚÎh{“FRýD“öJÎÊÈ*+o£Ft:‡^˶ñCØÆf\8ØŒ&‡†Ñôи%F–Ó¶öŸt[Ó‚~JlÓ endstream endobj 24 0 obj << /Length 182 /Filter /FlateDecode >> stream xÚUÍ1 Â0à_:ÿ`/PìMC”v(j3:9ˆ“: U:ˆÍÑz”¡£ƒˆIÄ!Ë7¼ï‰é8âQL#NN"¦#Ç ¡ÃˆDòkgÌ%²- l©cdrE·ëý„,_ω#+h§‡ö( ò¯¿ ß0¬R‚GéC:k3•d¦V™ª4PÖ`  {@û1¼ÿ€¡gy9x–Ρoi|KãZ”Cf1.$nð ñÿ> stream xÚ=ͱjÂ`à2î’7hî èŸäÇ6]ˆ fìÔ¡tÒŽ…*:H|±é(V;Qû¬›X¶’¤\FjÓÛeý%E)æM“TÌ‚k1åRvûO1Åjª±˜™¾Ç}H9S Ü Á¹B†4øÅ7Z4^ë7^󝿬üð;r<×ÿŽÌȇ0È)¤ Êèz§»!ËB–e,; eá£__ß=Fʼ”W¹|/Hd endstream endobj 26 0 obj << /Length 178 /Filter /FlateDecode >> stream xÚ]Ì1 Â@Ð )Óì„Ìt“MBÄ…Á-­,ÄJ-+³GËQr„”Bt ñóªÿá«|(¢œú1%Š2EûϨR.#Ê’ï²;baP®I¥(ç\£4 º^n”ÅrJ1Ê’61E[4%o!¨Aü™u4§x@ÕuŒ/øòØÓñYë¬qDówßûk;Ôp×pÒÐjh´WOü: ¬ðm 83¸Â7Ä¡B endstream endobj 27 0 obj << /Length 205 /Filter /FlateDecode >> stream xÚUÍ1jÃ@Ð/¶L!]ÀXsxµ^ƒ¶¬"W.B*'¥Á v+éh:ÊaKÆxl%4þ†oÝlÎ9üdxaØüa苬•2gëÆËþ@ËšôŽ­%½‘štý§ïó'éåë3Ò+~3œ¿S½b$PTˆ§h»$&wÊ;.CÕ¹ Yw¬þÐ ¡A ß †¿ ¸HD†‘)Ô€ TøC‰8À!ö#Çÿø_¢^P=”W¼ÉDC)´ƒö­kÚÒ V²Aš endstream endobj 28 0 obj << /Length 243 /Filter /FlateDecode >> stream xÚUпJÄ@ð/l˜Â¼€¸óšÄäHŠƒƒóSge!Vj)DÑN.>Z:_ca;S„à·Q9m~ ³ó)³“âT3­ô8¯´,´¨ô>—')Œfº(¾îeÝHz­ÅBÒ Æ%m.õåùõAÒõöLsI7z“kv+ÍFá˜QÁ¸‹Ø–Ú"qõ Ißîé`{¿ƒ}w3ÁˆÕ ¢™á›fÀÆÿaBì™»=ÑÌð3ã ÓKˆ·žM;tŸÄ~®è±='sŸ.ìC˜Ë±ä |G ew´†UuÌ‚%s‘LáárÞÈ•|–ob3 endstream endobj 32 0 obj << /Length 189 /Filter /FlateDecode >> stream xÚ1 Â@E°L¡70sÝì ’@°ˆÜBÐÊB„€ZZ( 9ZŽ’#XZ:IV›t«þ 3ïOÌØÄrÄ#²‰xjø¨éBºN%7nt8SjImYǤ–’“²+¾]ï'RézΚTÆ;ÍážlÆ@TðJô ø@ ðhxÁ«jze/¨ š]aöåÙáýÝ;¿íÇÎAdDÉ/ak+ÚÎ?i¶¥”T“‚RSÊ"§…¥ }G«@ endstream endobj 33 0 obj << /Length 188 /Filter /FlateDecode >> stream xÚ1 Â@E¿¤L/ :ÐÍ®A"ˆEŒà‚Vb¥–‚Š‚…EŽ–£äÁÍ$±ÐNxÕÌgæý¡˜1‡qß„l">hº.§!Ǧ^íO”XRÖcR 7'e—|»Þ¤’ÕŒ5©”·šÃÙ”s Î@ t€h~//i¹ÝKxO`L®Ð“tIVãçßxÅ?üÞù¼¨>ö‡©(=C±uÚ•¿/ñ@ªÅRÓr•iniMoEËBs endstream endobj 34 0 obj << /Length 130 /Filter /FlateDecode >> stream xÚ-ɱ Â0…á gð 2œ'0¹-¥™k3:9ˆ TGAEçæÑòfÚ¢|Ûÿ—ÕÒ7ôlXUÔÀ:ð¢x@='eý;ý m„;P=ÜfÌpqË×ó}…kw+*\Ç£ÒŸ;Zä“Fy2d›åÏd“L*R!s™ÉB¬¹ËY°ŽØã ,P#Œ endstream endobj 35 0 obj << /Length 131 /Filter /FlateDecode >> stream xÚ-É1 Â@EÑ?^á ¦xЙ‰‰mŒà‚V"ÑRPÑ:³´Ù™&Nwo¾\ø’ž%红V\ó¦xA=y1žö:À¨n×w¸°ççý½ÃÕ‡ ®áYé/ ­tò‹½4è’M22ÉD³˜ÉT&2+•<å*ØñBÛ#´ endstream endobj 36 0 obj << /Length 94 /Filter /FlateDecode >> stream xÚ32Ö30W0PaCsK…C®B.K Ïȉ&çr9yré‡+Xré{€O_…’¢ÒT.}§gC.}…hCƒX.O†z†ÿ 0XÏ ÃÀåêÉÈ[\w endstream endobj 37 0 obj << /Length 153 /Filter /FlateDecode >> stream xڅ̽AÅñ ɉ¨ŠóÌ—eëµSH¨"‘ ” ôÍ£xw³ÓN¦ø5çæþgvZ8œ8K¿àÜñbñ€·²–>žÎ7TzOo¡×²C‡ _Ï÷ºÚ.)k̓<j*¥zÑP ¢±‰R˜è.NÑO|[ƧÕmÈÜÏdSéL6•Îeé\6•NdV;üxÔ*Æ endstream endobj 38 0 obj << /Length 94 /Filter /FlateDecode >> stream xÚMÉ=@PEáþ®â®À¼™x¨ý$^!¡Rˆ ¥‚°{ äTß±4J2:*5¡Å4嬨`ö¢£ÿÆ´"žfšû¹@ò¶ BJJ7"”¼ï몀Ði ‹ endstream endobj 39 0 obj << /Length 172 /Filter /FlateDecode >> stream xÚ31Ó34V0P0bSK…C®B.# ßÄI$çr9yré‡+˜qé{E¹ô=}JŠJS¹ôœ ¹ô]¢*c¹<]ø0Aý? Áøƒ½ýãù† ö@CÿùA2þ€’@5@’±D‚!™dþÀðPI¸ùÌCdþÃÀþƒ¡þÿƒÿÿ “\®ž\\^åˆÓ endstream endobj 40 0 obj << /Length 175 /Filter /FlateDecode >> stream xÚ3±Ð31Q0P0bScSK…C®B.SßÄ1’s¹œ<¹ôÃL ¹ô=€¢\úž¾ %E¥©\úNÎ @Q…h ÊX.Oþ êÿ³ÿg``üÁ~¿ùûÆÿüäØÿÉ?`°gàÿ¤êàÔ õN}`o`üÁÀþ¤›™ÚÔøFÑ¢¢˜ÿ0°ÿÿƒÿÿ? Q\®ž\\à  endstream endobj 41 0 obj << /Length 235 /Filter /FlateDecode >> stream xÚmÐÁj1à é^=;OÐd-‘õ$¨…îAhO=”‚ÐöX¨ÒÞ„Í£í£ø{ô°˜N"¸Q6>fB&?™Nî'izàmf4Õô™ãáZûÒ||ã¢DõJÆ zâ.ªrM¿»¿/T‹ç%å¨Vô–“~ÇrEP@X×ìû8õ \²²IU{ó˜»ùÁ3ÌbÆYã¥1Ezôè$æ'i=SË©†LÂB„p6Pu Ž–8ç:R†£ ²Ž÷›[4ß9Þ²áéí…ÃŽ&ÎÈ&üZÚú'­ãXήÁÇ_ð%°m¼ endstream endobj 42 0 obj << /Length 260 /Filter /FlateDecode >> stream xڭѱJÄ@à? LaZ áæ4‰Üª[-œ'˜BÐÊB¬ÔRPÑÖÌ›ø*¾‰yË+Äuv²g!–Bà#“ÍÌî¿ÎïúnÙñÎ;ÇÎóMG4÷Zly¿›¾\ßÑ¢§æ‚çžš-SÓŸòÓãó-5‹³#Ö÷%_vÜ^Q¿d ˆRPDZT†¸R´öR ÊOÔµ þ@ù*˜(ÞAWEÁ],øR‚º˜IµRê5ú7P­Ñ&?”2oÆ(~#FLØàgÈü5=dF#ïzv¢L;mf–Ä&,—mXJ[°Ìa Þ#å }Rº:%e-vÁvS½•Ô=U:î霾šes– endstream endobj 43 0 obj << /Length 194 /Filter /FlateDecode >> stream xÚ33Ö31V0PaS Ss…C®B.S ßÄI$çr9yré‡+˜špé{E¹ô=}JŠJS¹ôœ ¹ô]¢  b¹<]þÁõBýc``üßD@.ƒý0ÅÿL1ÿSŒÀÃ?UBÙ7@¨`JJ=SüPêŠýê (<ö¡9ÅñP¯@=ómrüC%h˜ACž  !@ y`> stream xÚ35Ñ3R0P0bSCSs…C®B.s ßÄI$çr9yré‡+˜˜sé{E¹ô=}JŠJS¹ôœ ¹ô]¢  b¹<]þƒÀd’ñƒü†ÿ Œ`’ᘬ“6`R‰äÁAòI68ÉØ€L2`%™‘Hv0)"ÿÿG'!âP5Ⱥ‰ A€J$ãÿ `G@%¹\=¹¹Mÿx× endstream endobj 45 0 obj << /Length 106 /Filter /FlateDecode >> stream xÚ3²Ô³´T0P0aKSs…C®B.#3 ßÄI$çr9yré‡+™qé{E¹ô=}JŠJS¹ôœ ¹ô]¢  b¹<]þÿÿ†€ˆ¡¾aècWüÅåêÉÈ3v\‚ endstream endobj 46 0 obj << /Length 165 /Filter /FlateDecode >> stream xÚ31Ò33W0P0VÐ5R0¶T05WH1ä*ä26 (˜ZBd’s¹œ<¹ôÃŒM¹ô=€Â\úž¾ %E¥©\úNÎ †\ú. ц ±\ž. öÿÿ?@"äÿ000°ÿâ„=ˆ¨oÿ`#ø?0üoõ ü ä0X0È`a°o`àŠ2°7Ãñÿ qõ \®ž\\ŸÎ`¬ endstream endobj 47 0 obj << /Length 243 /Filter /FlateDecode >> stream xÚUпJÄ@ð/.0…ûfŸÀMNÖ?óSge!Vji¡hkRù\AKÁTÖ©$EØuwöŠM1üøf`Šï`¹·<’…Üw£¥>”w%=’Ö.>úÃí­jRWRkRçnKª¾ÏO/÷¤V›SY’ZËëR7T¯¥µ@fµm óÀ¦‡í¼ÅÏ0 à{d¾¦˜üۘÎ=õ4]LÕ3ùȦ€aÒ@b·´liº@ÏT|`Ä“MLjbËÀ¾Å4ŸLõ“ÿ1ÂÄdtFÀœW$®Gœ á*Ã.|ר™±ÕtIÿ6D†c endstream endobj 48 0 obj << /Length 239 /Filter /FlateDecode >> stream xÚ­‘±‚0†Ï8˜ÜÂ#ô^@D'ÔDŒ“::htGáxWÚœmš~éÝßöú_LÂyÒxJsNgoô(ò»ÌéŠIŠîžÂÝ5‡ÑM7ô¸?/è&Ûñ~IŸ¼#¦K¶ Cµ¥ Ô¼*x1F%¨À)dBœÃè ñ‘Š…¬ªA«ÑŸ8çEÅjGîU…Ò(ßNk¼ûÈ4ª,— ~ÐjÔ…}Á<ÛC¿2[|Žþfa?­-ÈÖžÆ3ë ñ“­oŒ×œÈ¾}°]Ñ=ÂUŠ;ü”K‰É endstream endobj 49 0 obj << /Length 167 /Filter /FlateDecode >> stream xÚ35Ó35T0P0bS#Ss…C®B.K ßÄI$çr9yré‡+˜Xré{E¹ô=}JŠJS¹ôœ ¹ô]¢ÆÄryº(ü‚ ê„úÏÀÀø¿,ÊÀ ÿLñSÌ? Ô0Åø™adªT Y;ªÑPû ¶CÝuP7ÈÙÿÀÔˆ ƒ™….ĵ˜—«'W ŽK€¿ endstream endobj 50 0 obj << /Length 221 /Filter /FlateDecode >> stream xڕѽ Â0ð–‚ì#x/ i*Uœ ~€ÄIí£ù(}„ŽJãÙK Í"&…äHrÿt¢F*ÄÇ8 q¢0šâYÁ È€f4ãÊé óäžê ×´ 2Ùàãþ¼€œo¨@.ñ 08B²D­uåÐ uf,HW§‚ ô¥lüfëç¬(ºz¥eõ§Ö~ûüæÞ¦Øô§¹_Qš@™ñÍëõ6Ò+L®6ŸñeålóZ¹šÿ«›v,X¿ÕKéP~ï‡ÞEÔºe¯Ö©úN=â’¹«vð™<›Â endstream endobj 51 0 obj << /Length 256 /Filter /FlateDecode >> stream xÚUϱNÄ0 à¿Ê)K¡~h{=îÄB¤ãè€Ó ˆ @°!ZÞ̉èF%Psw ²|Jì8¶ç‹Ãª¦’æt0£ùŒŽŽé®r®^j°¤EµËÜ>¸U㊠ÕKWœkØÍ=?½Ü»buyJz_ÓuEåkÖ?€ÆŒ!òÎf°l#>Ù3ZÎ;@Î'€ç7Àîx ïÉ&Œ&È–Nm9ƒR0—!¡G/aEïFD+E$½ÑŒµ²MX‰¿„^É>a‡-úÆü‘Mˆÿèû=¦×:upÇ´–¤-µiÞ}õèGŒˆA§Š^{s¦ywÖ¸+÷=Ÿ†# endstream endobj 52 0 obj << /Length 150 /Filter /FlateDecode >> stream xÚ3µÔ³4W0P0bSsJ1ä*ä2ñÁ" Fr.—“'—~¸‚©1—¾P”KßÓW¡¤¨4•Kß)ÀYÁKßE!ÚPÁ –ËÓEÁþ?<@£0ÿg`ÇÀøùA ˆbüP¢>€©T*L`¥€)‹`J+ŦF Åþ¿Hʃ‚ârõä äWÎr° endstream endobj 53 0 obj << /Length 204 /Filter /FlateDecode >> stream xÚmÌ; Â@à . ´Vf. ›´1àL!he!Vji¡(X›£å({„”Á8ë£—åø‡ùÝéÅQ—Úš’˜º}Úi<"ÏÈŃ÷f{ÀQ†jÅ{T3ŽQes:Ÿ.{T£Å˜4ª ­5EÌ&¡€º6äü¥…°%/_x÷/PAP02gøýÁ0Ò¦–yp&îî¬dBw›:Œ+0ðÁüâ}¨AT¾yóMÞ6Ó¢5lö–¢.Ë5²Ài†K|¤øT£ endstream endobj 54 0 obj << /Length 198 /Filter /FlateDecode >> stream xÚ31Ó34V0P0RÐ5T01V0µPH1ä*ä21PASKˆLr.—“'—~¸‚‰—¾P˜KßÓW¡¤¨4•Kß)ÀYÁKßE!ÚPÁ –ËÓEùÃT‚D0S$ê00|`ÇÀü¹A¾ù;ÿæ ì˜ÿå˜00þ* àÄ?8Q"êI&êPMÊøbÛ½`Ëßœq ä ã ò Ìê˜þÿ:]þ—«'W ÈckA endstream endobj 55 0 obj << /Length 182 /Filter /FlateDecode >> stream xÚÎA ‚`à'?( ‘œ ”ýüºÌ A­ZD«jXÔ.Ì£yàÒ…Tcu€ßæ 7f: 5ÙðP³™° ø éL¦ %¿—ý‰â”ü MþBbòÓ%_/·#ùñjÆ’&¼•ÎŽÒ„¡ZÀ{ÈUe5ÈTÆ©¬Ö-Õ‡W¨6êÀj@-ÐÉÅóOù¯Ó‰;*`{ú^‰ž[bàTd7“ý w§”§ÍSZÓ»= endstream endobj 56 0 obj << /Length 198 /Filter /FlateDecode >> stream xÚ31Ó34V0P0VÐ5T01Q0µPH1ä*ä21PASKˆLr.—“'—~¸‚‰—¾P˜KßÓW¡¤¨4•Kß)ÀYÁKßE!ÚPÁ –ËÓEÿó‚ÁþT‚zó !ÿHÔ±÷`øÁøþó†ú쀶¤ „|P±=˜i«‡u âÉDª)öph‘<„ÚkrF=ÈAï?0þ`<ÿŸ¡†½ÿ?ƒü?þÿ ì@‡s¹zrroXhI endstream endobj 57 0 obj << /Length 189 /Filter /FlateDecode >> stream xÚ]Î1 Â@Ð\˜B/ 8ÐM²(ÚЦ´²+µT´“èÑr”!åbI qáÁ23ü;èö9änÀ¶ÏvÈû€ÎdC)úlGUgw¤IBfÍ6$3—2™dÁ×Ëí@f²œr@&æm)‰Ú¸·2Ï©\^¡sϵ2¸Î÷¯HÅøQ‰RñþQÖOþø—Ö5ÉQÑJrµìhè M£íÂá„TårL¼@³„Vô½£@ endstream endobj 58 0 obj << /Length 141 /Filter /FlateDecode >> stream xÚ32Õ36W0P0bcSK…C®B.# ÌI$çr9yré‡+Ypé{E¹ô=}JŠJS¹ôœ ¹ô]¢*c¹<]ê˜ÿ70ð|À ßþ€ÁžÿCÿ`ÆÌ00ŠÿÿÿÇäè§3ÿa`¨ÿÿ޹\=¹¹¢&[ endstream endobj 59 0 obj << /Length 237 /Filter /FlateDecode >> stream xÚ¿J1Æ¿00…ñ v^@³9ïäŠÃ…ó·´²+µT´[¸}´> stream xÚ31Ó34V0P0bS …C®B.C ßÄI$çr9yré‡+˜ré{E¹ô=}JŠJS¹ôœ€¢. Ñ@-±\ž. Ì€à?É&™iN‚ìaþ`ÿD~°’È700nà?ÀÀüDþ“ØÀÈä‡$Ù€‚ëÿÿƒÿÿ7 “\®ž\\y endstream endobj 61 0 obj << /Length 122 /Filter /FlateDecode >> stream xÚ32Ö30W0P0aCS3…C®B.C ßÄI$çr9yré‡+Zpé{E¹ô=}JŠJS¹ôœ ¹ô]¢  b¹<]˜ø0È@A@ 8~Àüá? ±q©ŽØ0üÿ‚¸\=¹¹(CE` endstream endobj 62 0 obj << /Length 150 /Filter /FlateDecode >> stream xÚ32Õ36W0PÐ5QÐ54W0´P05SH1ä*ä22 (˜Ãä’s¹œ<¹ôÃŒ ¹ô=€\úž¾ %E¥©\úNÎ @Q…h ®X.OÆ ìø   P?`üÁð†Ø€¸ôE6Œ?êügüðŸ‚üc?PÃ~À†Ÿÿó.WO®@.ÿ§Wõ endstream endobj 63 0 obj << /Length 196 /Filter /FlateDecode >> stream xÚµÍ1 Â@Еir3'p.#˜BÐÊB¬ÔRPQ°ÍÑr±0EÈ:? êdÙ³3ó7èuÂ.{Œô¸òʧãH‰ÆrCqJzÆGz$¯¤Ó1öÇ5éx2`ŸtÂsŸ½¥ […RÊüâë?´LõºæÝ3Ø‚ærÁÊkm‚¨„;xÔÂ3êH†Kv¤Ø@%¯â.êýoÔ nn—**ŒÉù@Ô¦ôDr endstream endobj 64 0 obj << /Length 108 /Filter /FlateDecode >> stream xÚ32Ö30W0P0aCS …C®B.C ßÄI$çr9yré‡+Zpé{E¹ô=}JŠJS¹ôœ ¹ô]¢  b¹<]˜?0ü‡!þ ̃±ÿ`øÿÿq¹zrrÆ‚Q. endstream endobj 65 0 obj << /Length 177 /Filter /FlateDecode >> stream xÚ3³Ô3R0Pa3scs…C®B.3 ßÄI$çr9yré‡+˜™pé{E¹ô=}JŠJS¹ôœ ¹ô]¢  b¹<]˜?ð`Àðÿƒý†ú@úƒ=ãƒ:†ÿÈ77Ø3ðnà?Î ßÀüÿˆþÇÀDÿa`ÿÁÀNÿ``ÿ€þÀÀþ`Ð O€âÿÿƒÿÿ7ÿÿNs¹zrr#߈ endstream endobj 66 0 obj << /Length 147 /Filter /FlateDecode >> stream xÚ31Ó34V0P0bcs…C®B.C ßÄI$çr9yré‡+˜ré{E¹ô=}JŠJS¹ôœ€¢. Ñ@-±\ž. Ìø?00üÿ`ÿD~°’È70ðnà?ÀÀüDþ“ØÀÈä‡$Ù0½ñÿÿÁÿÿI.WO®@.‡e% endstream endobj 67 0 obj << /Length 188 /Filter /FlateDecode >> stream xÚŽ1‚@E¿¡ ™†#0Ðeƒ6 &na¢•…±RK v9Gá”Tâd)H¬ÌN^fþîþù‘žÌ¦ð”Çš£€Ã9Ÿ5Ý(ŒE”qÑßœ®”R{cRk‘I™ ?îÏ ©l»dM*çƒæàH&g8^W‰S­œQƒdHàVðá•R¾ ò!J*¨- Ài~ nNû/†ooñkg»Íîõ$AéÖHåŠ> éáwlzZÚÑIKÚ endstream endobj 68 0 obj << /Length 196 /Filter /FlateDecode >> stream xÚα Â@ àH†B¡y½ž­uj;:9ˆ“::(ºÚ>Z¥p"ØŠç]qÐQ |CB’?Šû2ä€Ü“1G!‡#ÞI:R°«aøm”d$V$f¶O"›óùtÙ“H–$R^K6”¥ŒÊ¯À¨\ƒ¹UW0÷Â/¼º%>Á«°T¨5*è´4hy~“ÿÌ÷ö²¥ý¦Ýß> stream xÚ36Ò35R0PacCcs…C®B.# ßÄI$çr9yré‡+Ypé{E¹ô=}JŠJS¹ôœ ¹ô]¢  b¹<]ØÈ3üPàÿÃÇþ?nÿÀÿœýó3 ~Äo˜0ÿah`þÁÀ€‚?P³Íüÿÿs¹zrrjÙF„ endstream endobj 70 0 obj << /Length 195 /Filter /FlateDecode >> stream xÚ=αJÄ@à¶X˜fßÀÌ x{›`TñSwÕ‡•Z * Wî£í£ÄÊ6`“"8Î%GŠ™ùÿfŠ|q~ÆK.ø4p¡ó‚½R^j¨çåÔ<> stream xÚ36Ò3²T0P0TÐ5T0²P05TH1ä*ä22 (˜Ad’s¹œ<¹ôÌ̸ô=€Â\úž¾ %E¥©\úNÎ †\ú. ц ±\ž.  Ø W á Œ@Ì Äì@,ÿÿ?Ã(f„ÊQ „þ0‚pC sC3ƒ=;ÿ?°f.WO®@.uH– endstream endobj 72 0 obj << /Length 153 /Filter /FlateDecode >> stream xÚ31Ó34V0P0RÐ5T01Q06WH1ä*ä21 ([@d’s¹œ<¹ôÃL ¹ô=€Â\úž¾ %E¥©\úNÎ @Q…h žX.Oæ ìþ`üJò`À‘p’ƒºBþ`°ÀÀðƒ¡üÆçÿì™Iùÿí@’ùÐ.WO®@.1c endstream endobj 73 0 obj << /Length 183 /Filter /FlateDecode >> stream xÚU̱ ‚PÆñ#‘k[çêªWJ'Á rjjˆ ¨Æ†¢¶ˆûh>Š`›Ph—º—jù ÿ¾@ BŸ\ò©ïQà“ÒÎÃ#ŠHE—Äè³l˜dÈ—$"äS•‘g3:Ÿ.{äÉ|Lò”V¹kÌRj×_œ œÒ.Á.X ,g0i)à <¡¥©¡pƒ¶&†®A†=éjœ|c(v‘kØ]þb=ÀÐ(Ô¿áúO¨ÁI† |F£?ê endstream endobj 74 0 obj << /Length 233 /Filter /FlateDecode >> stream xÚUÎ=KÃPÅñs Xx³v(æùzËíËb ­`A' ÖQ|A7©‘|±€Ð~Lïx‡`¼7UÓN?8gù«áá°Ï!ñAÄjÀÝÏ"z$¥ìr·¿~nîh”¼d¥HžÚ™drÆÏO/·$GçcŽHNø*âðš’ WUPñ÷6¾Aß´4æðŠ5¹§q ‘þ" bxØ%âtÇq¿Á_ù®cùGˆÅ²h;²š÷L€ Ëtè5Â<þfúOk…2·|âµÁ+ñ–ZlECÝdÑ ±ï(°ç˜ÂÑIBô¥Y_™ endstream endobj 75 0 obj << /Length 210 /Filter /FlateDecode >> stream xÚMν Â@ ð)(¡«ƒÐ> stream xÚUÎÁjÂ@àYi® Î èn²Zõ$¨sÚSE¨GÁ½‰æÑöQ|„x ‰³²Iéå;üÃüü=ÝF¤(¢N8 ^DúÖ!þ qª¨¯ÝiµÅIŒò‹ôåœs”ñ‚ö¿‡ ÊÉÇ”B”3úI-1žQY¦ãâàAægà//7ˆœŽ4gËZŽvª*Ì 0‰Ã¿˜Š+ã]S‡¸CEÉ@QsüϰFÕì,IqSn/¼'¶’gCþbŸ^m‘mjg`ç1øã'>ÚŸKø endstream endobj 77 0 obj << /Length 121 /Filter /FlateDecode >> stream xÚ31Ô35R0P0bc3SS…C®B.# ßÄI$çr9yré‡+Ypé{E¹ô=}JŠJS¹ôœ ¹ô]¢  b¹<]0001;Ëñÿ ÿaX*6T°ý†úÿÿ?À0—«'W ¾NÚ endstream endobj 81 0 obj << /Length 338 /Filter /FlateDecode >> stream xÚÍ“?N…@ÆgC±É6½€QãÚ¸Éó™Ha¢•…±RK vF8Þä%^€’‚0Îì ‘¼Z ø-;;3|óqvrX”ºÐ§ú ÔÆhs¤ŸJõªL¡ù6Ç~çñEm*•ßiS¨üŠ^«¼ºÖïoÏ*ßÜ\èRå[}O‰TµÕ@W‚€dªR‰ˆ;Ȉ,Q–ˆG¨9ÛCi ì7rXKËä0—Aà@$ˆs;’²º:ñ>GOÔ11PV¨GG’ª à{ ré(µëÜ‘  J}1*7S(»$;SheIÙLõ>âoúCø¨^¥f­i0Ó¤ÚÙIñ™Î§ÉÌô¬ð§ Cœ4ôqú¢ŽHºèG®¹‹nJÛè°¬‰®³œcÔC +{ç7ZÛÎÛ¶>»ƒ Úà¿¢‹*E!¼Õe¥nÕ/ÙÏíã endstream endobj 82 0 obj << /Length 105 /Filter /FlateDecode >> stream xÚ3±Ð31Q0P0bS #…C®B.C ßÄI$çr9yré‡+˜ré{E¹ô=}JŠJS¹ôœ€¢. Ñ@-±\ž. ÿA ÉÀþÿÃ(9THü±ÉåêÉÈ’:Õ° endstream endobj 83 0 obj << /Length 346 /Filter /FlateDecode >> stream xÚ}ѱJÄ@à?¤l“v_@“pÞ] !pž` A+ ±RK E;!÷hñMÎ7H¹à’qfwO ¦ù`vv23»œ•µ)ÍÒVf±0õÌÜWêIÍ%Xšú8œÜ=ªU«Šk3¯UqÎaU´æåùõA«ËSS©bmn*SÞªvm€| 82"‡7@бï, }8$´þtHIR2>JØÜJ =°MT;4[6ÿ±ùR׳éÄÄ~“û íD©Ï}~k£.:Âíì£6ʃH«¬Ï±¥DÎJ†wðkñ©8ÊÌ1ÁÛ‡=Iszÿ‚‰6üÑWÎBðJIľ7ìl¢:šÇa²hJ½Ý7ùCÞ¦ûßÍ8‘ÂýðˆþÝÆðâÞ5,φýkV›Ôqœ<ò Òöè÷Ã/™„µXY×dã|…ËvRJµêJ}áI± endstream endobj 84 0 obj << /Length 270 /Filter /FlateDecode >> stream xÚ•‘±JÄ@†'¤Ls°óšL® œ'˜BÐÊB¬> stream xÚµ±NÃ0†/ê`é?BîÀ‰dSº`©‰ HeꀘhÇ XI-Â#dÌ`å¸s‚ºtÅËgý÷Û¿î·×~Iyºª)x ö5¾£_‰XQ¸™&oG\7èväWèEF×<ÑçÇ×Ýz{O5º ½ÔT½b³!€ÿ€œÈ£‚™Oª±ª–!2J`@;€÷PŽPÈ<²;…‘GgÈ3E9c̈¹*lÊ0´9Útüø / Îà Ýìi†Õnʲm'¾©¿;)¤ø–),åˆbÈߘ^‹ìJq™©Ý‚§®£zµlÑð¡ÁgüÍF‹¾ endstream endobj 86 0 obj << /Length 253 /Filter /FlateDecode >> stream xÚÕÒ½NÃ0ðT"ÝâGȽu¢~n–ú!‘ &ÄŒ ˜Ý7è+õQúíØ!ÊŸ³¯ñ‚ŠÄ„ˆdå—‹³ÿÊl4¬æ\ñ˜¯jžU<ñsMo4HQÇúæé• Ù{žNÈ^K™lsÃïŸ/d·K®É®ø¡æê‘šgáʱ‰wƒ_ s=Ìÿ‡$ p8E €.¢° (±s‡×…¢ÀŸÂ4Ž2ì¥*ȱÓ| ]¹Ñ6&âÜ´LèÎpßàÚ‹À_à‡ýøËÇIHGN!ÄXÊ>±] ³7ž#†Ýfæýß".ŒÎF«?«Ç^Q 3Ò™Ö Ýщb= endstream endobj 87 0 obj << /Length 244 /Filter /FlateDecode >> stream xÚ…¿J1‡gÙ"0M!óº·`D«Ày‚[ZYˆ•ZZ(Úºy´}”<•aÇ™¹ãôP1|ðå—?üâéáIO :¢ƒžâ1ÅH=>cT¹Pc;÷O¸°»¡Øcw!»á’^_Þ±[^‘ØÝÊ™;Và8ƒŒ‘?dm˜gPÇj·\R…q :“dÄ„*Á |…Vbn¶;ƒg³Eó çd˜ö1Öo( Ø÷aãhDBÿcü³!ýD[Áo˜¬1¿En¥ ¹±¦ä%iêÝînª6N:ó\ÒZÛ` æ]H›_ÙI<ð?yë­œ endstream endobj 88 0 obj << /Length 138 /Filter /FlateDecode >> stream xÚ36Ó35Q0Pacc …C®B.# ßÄI$çr9yré‡+Ypé{E¹ô=}JŠJS¹ôœ ¹ô]¢  b¹<]ìþ``üÿ€ùÿ0fÿÿ+†ÉƒÔ‚ô€õ’ ä0üÿ‰˜aˆàÿÿÿ@Ç\®ž\\ÍÙ¥; endstream endobj 89 0 obj << /Length 107 /Filter /FlateDecode >> stream xÚ36Ó35Q0Pac c…C®B.#K ßÄI$çr9yré‡+Yré{E¹ô=}JŠJS¹ôœ ¹ô]¢  b¹<]ì0üÿ‰™˜aãÄÿ„޹\=¹¹µ‰Ã endstream endobj 90 0 obj << /Length 232 /Filter /FlateDecode >> stream xÚíÒ½jAð WÓÜ#Ü>·ÔŒ‚WZ¥©LÊ+³vrp!E¶›üçT°+‹ ó›Ý-ÆÙÇvïÞXÓÅqöÁt;æÍñ';ë±j-->x˜súŒÇéiNó©Y-×ïœgOÙ‘yÁÌ+ç#CYEI ºO$RáxŠ%4ˆDJʤnï«Ò 󢣨Ò×®U¶¤ Hª@Yûƒ$߸»Np·â§¤D@¥(€þ¿ØAx^ƒæ §¨å9ìÅE…ÿÇÍÛ„ÂÆip xœóœÿvÚiC endstream endobj 91 0 obj << /Length 184 /Filter /FlateDecode >> stream xÚíѱ‚@ à& &]xúÞÜHLtr0Nêè ÑUy´{ጃ „zwÀ¡Í×6ÿÔd4”’™JBG´ñ„qlfiG{Ø1+P¬)ŽQÌÍE± Ëùz@‘-§¢Èi’Üb‘¤‚˜µ©ÒÁc®|æÚ!P÷Æái à±®!`{èø.ÿT¼ÊV6ß¡ýAÓõ_°yÍÀ4Õ8+p…o âøš endstream endobj 92 0 obj << /Length 231 /Filter /FlateDecode >> stream xÚµ‘±‚0†kHná¼Ђ±0’ &2˜èä`œÔÑA£3<šÂ#02Î^KL%!_sý{½þ¬æI‚!.qa¼@¥ðÁCT±Ý9ß +@P% 7º ²Øâóñº‚Ìv+Œ@æxŒ0> stream xÚÍ’¿NÃ@ Æ]u¨ä…G¨_.!MB§H¥•š ¦02€èœ<’GÈx•ªÛ¹F:¡.§Ÿ¾óùÏçË“«è†"Jèò:¡lN錞c|Ã,5¢<WO¯¸(Ñm(KÑ­EGWÞÑÇûîÝâþ–btKÚÆ=b¹$(“#ýÑÃ!@5@÷Šøo˜J ÿ§4ö{®aäÁ³ÅŒòßëŽfJ®`o}4¼‘.lO­%Þw£‹m_…mt§¢e4](z†`_ëTÀU‰øµ`  endstream endobj 94 0 obj << /Length 169 /Filter /FlateDecode >> stream xÚÕÏ;Â0 ÐtõÒ#Ô' ’VbªTŠD$˜02€`nÆQz„T d¨jœ20õXö“üYœé™žcŠš+ã4xRp“s?¶aq¼@iAîÐä W<i×x¿=Î ËÍÈ ÷ ÓØ Eá¢^¹˜6¡–­É±Câ‰:_øˆ:WóÑ«}ßÍO_ /h‰ Æmƒú ýIž™–¶ðj^¤ï endstream endobj 95 0 obj << /Length 186 /Filter /FlateDecode >> stream xÚ35Ô34S0P0RÐ5T01Q07SH1ä*ä21 (˜›Cd’s¹œ<¹ôÃL ¹ô=€Â\úž¾ %E¥©\úNÎ @Q…h žX.O†ÀOþÁN2bÌH$;É&åÁ¤=˜¬“ÿA$3˜äÿÿÿÿ?†ÿ8H¨úANò7PJÊÃç‚”ÿÇ`$ÿƒHþÿ ÀØ`ÿð(Èþßÿ ýß E` q¹zrr:é“p endstream endobj 96 0 obj << /Length 187 /Filter /FlateDecode >> stream xÚíÑ1 Â@Ð  Óä™ èfÑlì1‚[ZYˆ•ZZ(ZÇÎkÙyÛt¦Ž»‰… а{üáÃÀ»°O!õ¨­(Võh¥p‹ZÛ0¤(j.Ë ¦匴F9²1J3¦ýî°F™N¤Pf4W.ÐdI àñ˜Kü#ZX€ƒøã+üÏÞ8ä¯È’ àö„wåÂ6î .n ŸÁÉÁNÃõ<sUÃv‹öÁ848Å”Ìðn endstream endobj 97 0 obj << /Length 137 /Filter /FlateDecode >> stream xÚ33Õ37W0P04¦æ æ )†\…\&f  ,“œËåäÉ¥®`bÆ¥ïæÒ÷ôU()*MåÒw pV0äÒwQˆ6T0ˆåòtQ```c;0ùD0ƒI~0Y"ÙÿIæÿ ò?&ù¤æDå(I²ôÿÿà"¹\=¹¹VI¢” endstream endobj 98 0 obj << /Length 301 /Filter /FlateDecode >> stream xÚ}ÑMJÅ0à)Y²é’Ø–G_]x>Á.]¹WêÒ…¢ëôh=JŽe¥ãüˆ? Ú¯if¦“tߟ ChÞ¯6 §á±s/®ßÑ\¦¼ððì£knC¿sÍ%½uÍxÞ^ߟ\s¸>kŽá® í½Ào@£B,D¸'€DdZš"-š,-ÚB/6¨3"x‰š¢äç”™œ®—ÓÊ®k‰í ƒËpÞ7q|Ì$pãFúæš¿È »ùdíL™@ÚAvüZ´H¥ÙFÓ¬¦YM«5Þk|,ZdÖìI³eb4Ðj`Môä³g!@Tt¶«`[ÈBÍ».àA8ã²EþõËwÌ•b«ÔŠW¢’üÉü'îbt7î}tû” endstream endobj 102 0 obj << /Length 136 /Filter /FlateDecode >> stream xÚ32×3°P0P°PÐ5´T02P04PH1ä*ä24Š(YB¥’s¹œ<¹ôà ¹ô=€â\úž¾ %E¥©\úNÎ @Q…h ¦X.O9†ú†ÿ ÿᬠ—Àƒ€ ãÆæfv6> † $—«'W ÷ '® endstream endobj 103 0 obj << /Length 94 /Filter /FlateDecode >> stream xÚ36Ò3U0P0T0´P0"…C®B.#3  ‚D"9—ËÉ“K?\ÁÈŒKßCHxú*”•¦ré;8+ré»(D*Äryº(üÿÿÿ6ÌåêÉÈ#ˆ'ï endstream endobj 104 0 obj << /Length 257 /Filter /FlateDecode >> stream xÚuбjÃ0à‚Ž€Ödò=A-pèHR¨‡B;u(…@›1–²9æGñ#dô`ìžd •|' óŸ–‹;}Oš¼–üåô™ã÷¶5\—˜½RQ`öÈ»˜•Oôó}Úc¶~Þ÷[zËI¿c¹%àªa,ÑD!¯Q$mª‹bÞG¡‡Çá2bW…h*—¾^õjL/.i éÕA˜€j’S]3}`ðqdØô;€ÊÇç¸<ƒÆz¼ì<ÊÃÄ uH> stream xڥѽ Â0àá¡÷¦…¶Ø©P+ØAÐÉAœÔÑAѹ}´> stream xÚ½’¿JÄ@Æ¿%`` óÂÍ hþ`Œ×xpž` A«+á@--»|±t¾Æv¶)-­³»ÉWXZýÂd¾owç›*;9-8ã’ >+¹Êø1§*çR̸*üŸ‡gZÖ”®¹œSz-eJë~{}¢ty{É9¥+ÞäœÝS½bÉØ é È˜Þ2Ô „‹–FJŸÑ -_ñ ¾5’ÞJ5fÒ‚FÛvÑh4­PŠ"¡V»‘ƒe¬£‘ÖF T ³ûì·Íß„iÿ—Ó¹{ ÷šî=¾#0¼·÷ôs@7ÑÏIMlý£VMtsŽáç~ŸÃ!|.Gð9Ãçö—#äÛÙ˜­0¶Ì\f¼·Ý Œ{‚qo@W5ÝÑ/X¸’I endstream endobj 107 0 obj << /Length 289 /Filter /FlateDecode >> stream xÚeÐ;NÃ@àßrai›=‚ç`;qѰR. ¢@T@I‚.J|®²7aàÒˆÈÃÎ$ÊCi>˳óØI}^M©¤ ¨¾ iI/•y7õ8KšŽ6'ÏofÖ˜âê±)nbØÍ-}~|½šbvwE•)æôXQùdš9!a¤€åŽûè€Á"é‘[dÙ72ô¶•ÜÃEW¸Œ:,wæX¨ë¨=0;rØ™nåW-¤·WƒèzUR‘³„,k–Ÿ”9¶M˜¥<êåÜI÷z°Ö:©HxÛDL¹ÕÎc¿ŸêÔ|c=1;2œØ‰^´¾ßÛê]ÚA·Äº7™¿Ä_l´Æo'kïH;tÎÛ€_Ñ"èÅ=\lh®soþWŽŠÐ endstream endobj 108 0 obj << /Length 213 /Filter /FlateDecode >> stream xÚÅѱ Â0à; ·ø½Ð4X-‚P¨ vtr'uTt•7)7´&/¡Â“²‰Ž hÀ4³“"¯rM¾ò¨Ó˜îzd‡Ú endstream endobj 109 0 obj << /Length 210 /Filter /FlateDecode >> stream xÚuÏ1jÃ0àg<þÅ7ˆÿ 4²‘ã1'…z(¤S‡$ MH×XGÓQ|„ŒJÝW\(TˆôúŸ 7uN3uúk‘i1Ó}.Gq%CËáf÷&u#öU])ö‰±ØæYϧƒØzµÐ\ìR×¹fi–Šè €éÆWà‚Op_ÝPIÓ!õ I@Ò*¤#f %×#ý¸~á,üK{ÇT#ç¼³¶,„ΰq`É(°nìYÜsLøâ¾Þ–ÇF^䃷V2 endstream endobj 110 0 obj << /Length 125 /Filter /FlateDecode >> stream xÚ32×3°P0P0b#S3s…C®B.#C ßÄI$çr9yré‡+ré{E¹ô=}JŠJS¹ôœ€¢. Ñ@-±\ž. ŒØ€ÿ‚ˆ¥ˆŒþÃûæ? : æ ÿÿÿ€ .WO®@.»P endstream endobj 111 0 obj << /Length 110 /Filter /FlateDecode >> stream xÚ32×3°P0P0b#S3K…C®B.#C ßÄI$çr9yré‡+ré{E¹ô=}JŠJS¹ôœ€¢. Ñ@-±\ž. ŒþÃûæ? ŒC 1ÿcøÿÿq¹zrrp^Ú endstream endobj 112 0 obj << /Length 203 /Filter /FlateDecode >> stream xÚåÐ=ªÂ@ðH˜Â\@ÈœÀMü BÀ0… •…X©¥ ¢­ÉÑö({Ë«ãî+¾¼b†ßü§˜aÖé8åž«|Äý>2ºPî³Ô~±?Ѥ$µá|@jáRRå’o×û‘Ôd5åŒÔŒ·§;*gX@l$Æu¯8lSyÕEÈžñn!Ñ­Á£X#xiTCÄÆ©F•þHjODO' 0¿ôvÒÊÝö§þ³B÷J#n Ò$"¡ˆù&š—´¦ݤ› endstream endobj 113 0 obj << /Length 209 /Filter /FlateDecode >> stream xÚ= Â@…GR¦É2ÐMtý©bSZYˆ•ZZ(Ú‰ÉÑr2EH|›((vÂðí̛ݷ«Ga_<éIÛ=Ý—½Ï'Ö]ˆžQêÎîÈAÄj-ºËj™U´Ëùz`,§â³ eã‹·å(¢8!"«Ê@'-À1¹à4r²Sjed=L A Ñ‹]l»ÓŒßÄñ V0ùee˜þǯÛ̬äsnãÄ…«òíž ²Áœ¬Ì”/óÍKÝ´í*ëßàYÄ+~PûZ> endstream endobj 114 0 obj << /Length 218 /Filter /FlateDecode >> stream xڭнŽÂ0 p[*yé#à€4"€øè€t7Ýpº ‘Á }4¥Ð±CHpH'n¼[~ƒ­8{`zzÄ9÷¹«Ç<Ðl o5É„jÎÃ~ÛÚìiVúb3"µ’:©bÍçÓeGjö1gMjÁßšó*Œ6±Þf¾'i%°ôQ|”p”Þ´Dй£+”7Y´¦Ñ&˜Dí»èþêï™ñÇÖºÍã^ÙÜ+­džF˰ÅU6ºƒ´uÒˆ“¬;Ò‰wþÛĽoÞ¤eAŸô$”Šš endstream endobj 115 0 obj << /Length 144 /Filter /FlateDecode >> stream xÚ36׳4R0P0a3…C®B.c˜ˆ ’HÎåròäÒW06âÒ÷Šré{ú*”•¦ré;8+ré»(D*Äryº(0ÿ`þðÿ‡üŸÿ?lìþÿ(¨gÿñà?óÏÿ6ügü  u@lÃøŸñþC{Ì ´÷ÿÿpÌåêÉÈÈöPê endstream endobj 116 0 obj << /Length 160 /Filter /FlateDecode >> stream xÚ36׳4R0P0RÐ5T06V03TH1ä*ä26PA3#ˆLr.—“'—~¸‚±—¾P˜KßÓW¡¤¨4•Kß)ÀYÁKßE!ÚPÁ –ËÓEó¡a9$lÄuPüˆÙXþÿÿÿ¡$N#ÌC®ca¨gc{ ùù ì00þ?À”àrõä äùJm endstream endobj 117 0 obj << /Length 162 /Filter /FlateDecode >> stream xÚÍË1 Â@…á·¤L¡°˜ èfqCÊ@Œà‚Vb--+'GË‘<@Ⱥ!Xè l¾âý3©™ŒžóÔpjØZ>ºíÇ„m:”êL…#½c›‘^…™´[óíz?‘.6 6¤KÞNäJV- ð-rÿeÜByD¡z 7ÿ«ÿU}Ä`‡(øD,uxIƒé0nÒ·WR héhKo©b“ endstream endobj 118 0 obj << /Length 236 /Filter /FlateDecode >> stream xÚMÏÁJÄ0à?¶0àöª°Ð> stream xÚ½½ ÂP F¿Ò¡¥Ð¼€ÞVn«“‚?`A'qRGE7Áúf}”>BÇÅšÞ‚Šè*3$|9º×î†ì³æV‡uÈQÄÛ€¤}®+ê5“Íž†1©%kŸÔTڤ⟎ç©á|Ä©1¯öר8Ux·èã”À*à%V7±38©“ÂÎ \Aî&°rOP ådeyÜ¿¡>Xý ?c\%éý#øë£æË'q¶(I£©fÔ‰µNšÄ´ ƒ…) endstream endobj 120 0 obj << /Length 131 /Filter /FlateDecode >> stream xÚ3±Ð37U0P°bC33…C®B.c# ßÄI$çr9yré‡+qé{E¹ô=}JŠJS¹ôœ ¹ô]¢  b¹<] >00013Ëñÿ ÿAø9³ùà óÿúóCýÿÿÿa˜ËÕ“+ Ìt^@ endstream endobj 121 0 obj << /Length 259 /Filter /FlateDecode >> stream xÚ]ÐÁJ…@ÆñOf!"·."ç åÚÍE0p»A.‚Zµˆ ¨vµ ôÑ|Á¥‹ËÎgH0?˜ñ?p´¬NÎNmn¹ÊÒ®×ö¹wYUºÏ¹å‹§7ÙÔâîìªw¥§âêkûùñõ"nssa q[{_ØüAê­…ÙÈB´aD4%;˜>Ú#îp¨§Ýà{%*eÌdl”鈧W”]èHÿ‹ùOË·ž¦…dfä 3Âױt¢KÒ‡óF¼oæû¼³MØfl=³oÂ,"†EÌ"pLΉ~WІh–Fš¥F³*Ö4×€& !Œ3ž´DWþËZnåÎvj endstream endobj 122 0 obj << /Length 206 /Filter /FlateDecode >> stream xÚ¥ÐÍjÂ@Àñ„@CÐkBç º·‚Ð õäA ¶GAEÏæÍÌ£äMbö/hèµûƒÙf–Éf¯Ó±Zµ'›èdª?©$¶¹u©{øÞÉ<³Ñl(æ½½“èéxþ3ÿ\h*f©ÛTí—äKõ> stream xÚuпJÄ@ðoÙ"0…y!óšDr1•óSZ)ˆ ¨¥ ¢­É£åQò[¦X2ÎæN¼²ð[˜ý÷ÍÕñéŠ3.øè„‹—%?çôNEÆa”Õvåé•Ö ¥·\d”^j™ÒæŠ??¾^(]_ŸsNé†ïsΨÙ0yµ("=¬·¢I 5p‡oI—àu·ë~ѽvŒ§ œÚ§î´„©5âÐF‡à rˆ¤“ q/ošAz½ ¹FÅÌxé¶`Úcο¤ý=!õ‚)Ùa¦$¼ï°ãÜ ¹Ðï íkÙkRý—:ô5±Œ€•ðš†.º¡Ö̈% endstream endobj 127 0 obj << /Length 398 /Filter /FlateDecode >> stream xÚÕ”½NÃ0Ç/òÉyÔø  m¥ K¥Hd@*bFHÝ’Gó£ä2vˆjîü•Eb&Cô‹íÜÿö×ËË«¥ÈÅR\”b‹"ÏÅkÁ?øªÄQú.íÜË;ßV<{«’gw4γê^|}~¿ñl»¿Ïvâ©ù3¯vèѾQ¢5@d°ÖºµÈ´ÖG`ÊÌ·ìdQö¸bB\‰"dºÁW› Æ'œ‰º1é)àP’l$bÝ.µ¯DƦ9†hbY´±p‚ôÖ>bP:Ä`VE•S˜`ªœØåt¡³€ÖÆèÜL©t„Ç9”3)ï|Šõ bvóØÔÿ GÖÿNs@9ƒÑdSLç±8:›pÜ ¥1¸ eÃPQJn„gCÊ‹Áû9„RÞ@(ðƒo!ƒÞD¾E¢¼œiM«aZÓj$MØŸÔ|›h×f•‰ÖÛöj¨cÕ[ÔèÒæBíï’¥KÁï^~ïñiÂéûü¶âü+8éj endstream endobj 128 0 obj << /Length 213 /Filter /FlateDecode >> stream xÚíÒ=jÃ@à'T¦Ñ â¹@²+០[¨8U ãÊvéÂ&wÒÑtA¥Šàñì*è&ËÂoÙÙéü)³å?¦<µ<æ}B'š¤ZNìÏÑîHË‚ÌOR2¯.'S¼ñçùë@f¹^qB&çMÂvKEÎÀHDÚÊ7Ü*»žÖ“ýs—D=YãqŸý‹t”Í_ZnH²ò\€@*,p„ʃrb Ò1‹*ÄZ!l0Ò A‡¬Ö~Ä]ÓÇäꚌ¥DŸÑKAïtÝᱸ endstream endobj 129 0 obj << /Length 331 /Filter /FlateDecode >> stream xÚmÓAJÄ0€á”, ÙôJrÛâ …q»tåB\©KŠ®ðb‚ð7–y¾¤“÷f&)¤|I ý)¤®ê“êÌT¦Á1?5óÆ<ÕêU53œWnê6_Ô¢Såifª¼ÂUUv׿ýíãY•‹› S«riîkS=¨niFö¸IP´à(ÜŠëØ®‰ÅJˆcø:`Žï#XûÁQÚ}ºcG¢f›sØ¡ ”ÌÌGRøž‰>"¢ïÙr$j¦ˆè{m dúˆˆ¾gKÓõŽDÍt1]ÑJ¦‹ˆézˆ±gbq$j&F$ˆ=L(™‘ ö0bÏl×Ì‘¨™Å&Åvø(™|'(à‡ùKì™íˆšY$™')™Y’Âñ> stream xÚÕ”½N…0ÇKHºðœPÚ“{™H®×DŒÓÕÑA£3<Â#02*==-í$¬BÒþh9=ý·RÜ\ö `W;( …€7É?y!@¿RìÌÜùƒ+ž?C!x~¯Çy^=À÷×Ï;Ï· y~‚ â•W'`ó©ŽÙ§TÊb¤”›H+â¬gñD\·Œ©†~×æÆ ç&푱ÃÙTOGƸluk¢ÕÍÒªe–þD+ò€Þ“ v§3Í(“Uk²U”1rã2÷W¡9²%˜}øìVíW`æd$N‡€SÇ£þ¤JŽ,s<­rÙÇj× 7wn77±Z¸ý/¼ºö ÔsøCí¼ºwn¯§pß=Nœf†UŽÞú€#§ÏîB·VÏm¨í@ÿ½]"êy2%I2+\òÏ Íè0×& Ò?Ë™g…ÞÈ3vÑ¿+‚ÓçŸ,¿òþ]äßQîîâwâ¿Aý endstream endobj 131 0 obj << /Length 233 /Filter /FlateDecode >> stream xÚ³4Ô37R0P°aSK …C®B.s3 ßÄI$çr9yré‡+˜›qé{E¹ô=}JŠJS¹ôœ ¹ô]¢  b¹<]þƒÁ뜄²>€ÿÀû@‚ÿ?±˜ÿ7@Y -–ý DBXü`,v8‹ùœõÆbˆÎõÆªÇÆú@3ÛnÁëfd_b†û?̰⇇¤<€³`,x> stream xÚÅÔ±NÃ0Ы×ÎÒ×@êÊÁ0·Ì=ÌãS,,D¿ uÇê‡Í+u|mÇêŠï‹ÛOö³ëîDîOæE;Y—ðЊÙDê3i S%wÎû3cH˜€ ;›<$érò”¯Ùét ?F7êðºÂ{ü‡ñ,\ endstream endobj 133 0 obj << /Length 374 /Filter /FlateDecode >> stream xÚ…Ò;NÄ0à?JÉ`_’ ´@e‰‡ÄHPQ * ¤AKr´ÅGp™ÂÊ0ö˜ˆ] ¡-¾ÕÄžñØsr|xzf;{bŽìæÔö]gŸ{õ¦6M¿¾;’oO¯ê|«Ú{»éT{âªÝÞØ÷ÏÕžß^Ø^µ—ö¡·Ý£Ú^Z ! à( *¢˜lˆÐ4±ÎC #ê™]xKt¨"ûå8ÆšM`5ïôÈ©õ$šdÍŽH5à’`!Ùaõ+ëV—ÍêUúË\·Y¦==¤R(ÎÅ(š¥( ¸UÙÐP,RÎTå|²’J`(Ãúœ@>ðZÊÂuÁT2äŽ(üNÍ©YS9Ô°åpcY Vr6®±çÚõžÆËDýÍjøÇyW/jwÊ{NÒ‘ùq”ŽÜ(8È +Z°ä„KJT͈i°xHc@0§5sóL‡Š<'Bz ùtÿ!Yçg˜ÊÓ««­ºSßÔŽæ; endstream endobj 134 0 obj << /Length 267 /Filter /FlateDecode >> stream xÚ‘±J1†'lq0…ûÞ¼€f̰pžà‚Vb¥–Š‚]òhy”}„-¯86ÎL¢œ‡• Ù/Ìü;“üq«Ó5äè¤%×QwFO-¾¢kHfçræñ×Ú;r Ú+£®éýíãíúæ‚Z´ºo©yÀaCÕ 2–i¤´å¯™5º˜À€z„>‚¬%k<&rš¥,«¶`vŒìd+q3Ëß’1«^+ü ô\úoxE<@ØG*Ðqˆ ÷ù/|AüýoŒÙ¸=˜¨×,¨¢8U(`‡Ø´ fA-©‘pœûžçÚŸ¹Ú¤Pjí"ê{mœ¤ÔIš€‘ƒã倷øYRŽ endstream endobj 135 0 obj << /Length 182 /Filter /FlateDecode >> stream xÚ31Ô34W0P0b3CC…C®B.# €˜’JÎåròäÒW01âÒ÷ sé{ú*”•¦ré;8+ù. ц ±\ž. ò€Ãÿ@‚ùÿ? ÉÿÁ$|@¾Á¾¡HÖ3ü?ÀÀðD2‚Iæ?`òˆdÿÁT!ù?0È ``€‘Óù`! ‡iŽßú? æPÂÁ$¹\=¹¹û™ endstream endobj 136 0 obj << /Length 249 /Filter /FlateDecode >> stream xÚ­‘±NÃ@ †}êÉK!~¸5Ç©©*ÁÔ1#æÜ£õQú3T9l× êÈÝIßɾü±‡Ûë5•TÓUEá†Âš^+üÀ:p°¤PŸ3/ï¸éÐï©è·Fßíèëóû ýæáŽ*ô-=UT>c×€Kxåiôi$Þ«Š@v”#W@Áø!ç'=rå4à8 E\)™æGCÎ †B1Š:‹6ŠÓ½bê¥:wZ¹KÿŠ??²"XÖi=Ì1w«½fùbpêYœ4?Í]óšeä[›ƒã©ÄßÙÄt~xßá#þ°´”ð endstream endobj 137 0 obj << /Length 185 /Filter /FlateDecode >> stream xÚÝÏ? ÂP ð¯,d°«ƒÐœÀ×ÚVt*øì èä ‚ Ž‚ŠÎ¯GëQzÇNÆ÷:ˆƒx‡üÈ—@ i¿—Drj*ñ æCDJb“Cíb¢qNjÍILjn¦¤òß®÷#©ñr©)oÌ™-åS†¯†/ž–ÂX¥ˆSeF·Ô•+^¡+ˆkÛª»d%ôA¢è3ðv×X}Xþ´øÅ~äÈö"õ7i–ÓŠ^¤Ds. endstream endobj 138 0 obj << /Length 281 /Filter /FlateDecode >> stream xÚuÐ1NÄ0Ð¥ˆäÆGð\’o$"-‹D $¨(PR€ [mr®â›#¸Lv˜q v š'Ù3þ3Éêì´n¨"O'5ùsj<=׿Íx/—5«¥òôjÖ)ïÉ{S^˵)»úxÿ|1åúö’jSn衦êÑt8ä€å©zÞ[dŒö yDñbDΰƒtÁ‰=Z¨b‹è°M΢ýÇûyqPû¡©“Újë•e^Œ5X*³>ìYëŽYžÌ:#•õB´IjÆ!¥MlGÕ-ƨéÉâH]$?r>Pçäcš6òŸA§Ù ÓìÖ~¢þ¥I"v˜¶ÈfD7¸ˆ(Ÿ0æºl@/]æª3wæׄŒœ endstream endobj 139 0 obj << /Length 268 /Filter /FlateDecode >> stream xÚ}Ð1K1ÀñWn(¼Áûž/ ¹T‰„ƒZÁÄI…* nwâËÖ¯qŸ@2ÞP.¾äR0‘:¼ðK2äONä¡<¦‚ft I’šÑ£ÄTŠ RGÃÍÃ3.*·¤ŠK>FQ]ÑÛëûŠÅõ9IKº“TÜcµ$km™µúŒlvÃÓ2JP;L5o<š-ÜDØw0¹ÃÄ¡ ;Ì#ð3ðÁ“9¬~cÔóÒF°<à cp¼GÍh> endobj 9 0 obj << /Type /ObjStm /N 24 /First 185 /Length 1769 /Filter /FlateDecode >> stream xÚµX]o'}ß_ÁÃåÉÊC’FªÚTQR©–¶ñ&±ÔØ•½‘ÒßsaîŽ×ÉÚUµîÀ…ι¬2ŠT1*+ÊIÙ¢¨l”%7QÙdƒ*­êƒ†É"ƒr1¢l½r¹dzG²Qyª^ù”¼"oT0&mŠ«‚‹¨Š7!`¬Þ!Sìæìl3ýþÏß;5½Ý~Úm¦—7×ûÝõþN9|Ñ»ÍônwwóõöÃîŸW ov—WÛ7ßÔ¹!’Ň؋ šß¢wÀÕž?¯ž_Û:;SÓk—1:¼á,JËb$±[&h¶¦‘³ð2½½½ùð~·Wçá«×jú}÷m¯.zmèÜÍfzÿõÏ}-²Ñm¦ß¶_vÕ[Ç›íþöЇ­ YÃÁoä/Z­õÓÔ3§žYLžU˜ñ 9 ü5ë1ýüs÷B]Ô¿¾º½Û¿ü¼½UXÔé×í\ ‹qüqu¹ÿ|ÇÛ£ÎåO×n.¯®?ñF©®ÉÎïxÏÌóxnƒöX`«ý<èÿí޼­/—µm‰éükÃi)o]mù:æ¹aª š÷®Óج6éP¤#o´ã©«Øgc3½ºúøq‡íÄó}îã´­OR>Oúúf¹û¨J˜¶p[â°$XøÉxx§›å 4mGd¬06Ö1I¼Éld –a$cKØ6>à,^{6Ö„]\’pIì”@$\ZvdiÙÍøNÛVà籠ü¥D=»ïy8 =oŽs¾~kZ h—º(K!+kzx5—)k—‚UÖ-¯¬_ XÙ°°-– G»Œ~m–Äpn]z n}ÅmLÿ·6=€Û”W¸MeÛ¼ðß¹Ï Q×e¼ÿ³N›¤œÕ ƒ–+à8µ¼'*Äæÿï"~x¡hìàÙsßÁÏ ³0ÆgL ¢×9!ê@•Ô5V¼ ¼9z¨»6¤VÓE]è Žpé ÎüqÍît¶³%Ý«Èê†ç%¤)Ìs4תÛàZ¾¥'ð‰GÔó;°èÊ´åÇàˆš~ð„¦ëŽñç6hƒl"êÅ â`¦ˆÞꃉ=&ôÄ2€†ÅÁÂW) +˜£>è »+úÙÂÂÚd¯rx€ 覒'–ljüÇIª„ÀIyÓq’*ä9áÆÖ¬ˆ Tà;Ñ`â]g d\'ÏËÝó7z¡¨s ô’ëT²tq¥ëlƒåH=Y"õ<ÆÐýs¬êþ±¾!akõ¾ƒ·çQ¿ûè}Ä÷oá Ù¿19½_,M°ƒ¼ƒäü ï°ð(”_L“£‹ÁäŒÎ¥àU4‚ð#  “3Öœ`ÿ¸0¹)ع"Ä(BAL"Ä,BA,"$#BA±ÒΊ¸F,ÁR-#@$JADŒ1‚¹1L®[¤FŒž?ŒÃqøWX§'+½"#¥%b”µÒãÅ]… ^â3bÐØ»-ý‘Z+U^ 2ÎÇbÅæïÅŒ¹·€öi® fÍÝ7È <45BFF125AD815B00C737B000C8054382>] /Length 459 /Filter /FlateDecode >> stream xÚ’IlÍaÅϯtx^__ûªjhñ­!}T Õ!j,š[^‹VI£R‘JC¢,H,%†T‚„°%!6lXر a¡‘H„ó_üò}¹É=÷œû}’þ¥(„ Ëg¾É5™&ͤ0\Ôc¤>iý"}šÈˆ‰PµÈlYÝ"{@䜹÷DxTä}‘¯"墰NÄDQ2ÐgÆ›T&ÜÅÄħ¢äŠ˜Ô!&GÌ1Å:So‰Ò›¢ì£˜^)fÔ‹¸çƉ™ßĬ 1»GÌIŠòˢⓘûRÌû,æÿ þŠÊ¨XXj|_äÞ*{ªú!ïÅbk,±‡ê;béQsM,»+–;ËŠëbå ¨í«zEýÔ¿ cA†t“aB4Úûê=¢©X¬y!Ö•‰õbÃC±qL4¿›.ŠÍÞ_‹û· Z›ÅÖ&±­Elo;f–É69ì|,v]»kDÛˆhw¦½¾'ˆŽw¢ÓÙö¹¶H¸!º¬Ýý]|#zž‰CÞéagì ›/âHBôµ3Â&ÏD8ê<ýÃâØ}qÜ^üNøN¾§®ŠÁŸâ´çœ©g׊¡'AÔ˜BSÄù|1Ò§ÿÝhd– endstream endobj startxref 36466 %%EOF rjson/inst/unittests/0000755000176200001440000000000013646044300014424 5ustar liggesusersrjson/inst/unittests/test.largedata.r0000644000176200001440000034315113646044300017520 0ustar liggesusers.setUp <- function() {} .tearDown <- function() {} test.large.data <- function() { json <- '{"15060":{"Atom_chem_shift":[{"category":"_Atom_chem_shift","data":[["1",".","1","1","20","20","LEU","H","H","1","8.149",".",".","1",".",".",".",".","20","LEU","HN",".","15060","1"],["2",".","1","1","20","20","LEU","CA","C","13","56.016",".",".","1",".",".",".",".","20","LEU","CA",".","15060","1"],["3",".","1","1","20","20","LEU","CB","C","13","42.180",".",".","1",".",".",".",".","20","LEU","CB",".","15060","1"],["4",".","1","1","20","20","LEU","N","N","15","122.739",".",".","1",".",".",".",".","20","LEU","N",".","15060","1"],["5",".","1","1","21","21","VAL","H","H","1","8.048",".",".","1",".",".",".",".","21","VAL","HN",".","15060","1"],["6",".","1","1","21","21","VAL","CA","C","13","63.412",".",".","1",".",".",".",".","21","VAL","CA",".","15060","1"],["7",".","1","1","21","21","VAL","CB","C","13","32.236",".",".","1",".",".",".",".","21","VAL","CB",".","15060","1"],["8",".","1","1","21","21","VAL","N","N","15","120.251",".",".","1",".",".",".",".","21","VAL","N",".","15060","1"],["9",".","1","1","22","22","THR","H","H","1","8.032",".",".","1",".",".",".",".","22","THR","HN",".","15060","1"],["10",".","1","1","22","22","THR","HA","H","1","4.310",".",".","1",".",".",".",".","22","THR","HA",".","15060","1"],["11",".","1","1","22","22","THR","HG21","H","1","1.240",".",".","1",".",".",".",".","22","THR","HG2",".","15060","1"],["12",".","1","1","22","22","THR","HG22","H","1","1.240",".",".","1",".",".",".",".","22","THR","HG2",".","15060","1"],["13",".","1","1","22","22","THR","HG23","H","1","1.240",".",".","1",".",".",".",".","22","THR","HG2",".","15060","1"],["14",".","1","1","22","22","THR","CA","C","13","63.154",".",".","1",".",".",".",".","22","THR","CA",".","15060","1"],["15",".","1","1","22","22","THR","CB","C","13","69.934",".",".","1",".",".",".",".","22","THR","CB",".","15060","1"],["16",".","1","1","22","22","THR","CG2","C","13","21.960",".",".","1",".",".",".",".","22","THR","CG2",".","15060","1"],["17",".","1","1","22","22","THR","N","N","15","116.327",".",".","1",".",".",".",".","22","THR","N",".","15060","1"],["18",".","1","1","23","23","LYS","HA","H","1","4.160",".",".","1",".",".",".",".","23","LYS","HA",".","15060","1"],["19",".","1","1","23","23","LYS","HB2","H","1","1.870",".",".","1",".",".",".",".","23","LYS","HB1",".","15060","1"],["20",".","1","1","23","23","LYS","HB3","H","1","1.870",".",".","1",".",".",".",".","23","LYS","HB2",".","15060","1"],["21",".","1","1","23","23","LYS","HG2","H","1","1.680",".",".","1",".",".",".",".","23","LYS","HG1",".","15060","1"],["22",".","1","1","23","23","LYS","HG3","H","1","1.680",".",".","1",".",".",".",".","23","LYS","HG2",".","15060","1"],["23",".","1","1","23","23","LYS","HD2","H","1","1.410",".",".","2",".",".",".",".","23","LYS","HD1",".","15060","1"],["24",".","1","1","23","23","LYS","HD3","H","1","1.500",".",".","2",".",".",".",".","23","LYS","HD2",".","15060","1"],["25",".","1","1","23","23","LYS","HE2","H","1","2.980",".",".","1",".",".",".",".","23","LYS","HE1",".","15060","1"],["26",".","1","1","23","23","LYS","HE3","H","1","2.980",".",".","1",".",".",".",".","23","LYS","HE2",".","15060","1"],["27",".","1","1","23","23","LYS","CA","C","13","58.450",".",".","1",".",".",".",".","23","LYS","CA",".","15060","1"],["28",".","1","1","23","23","LYS","CB","C","13","32.578",".",".","1",".",".",".",".","23","LYS","CB",".","15060","1"],["29",".","1","1","23","23","LYS","CG","C","13","29.110",".",".","1",".",".",".",".","23","LYS","CG",".","15060","1"],["30",".","1","1","23","23","LYS","CD","C","13","24.850",".",".","1",".",".",".",".","23","LYS","CD",".","15060","1"],["31",".","1","1","23","23","LYS","CE","C","13","41.670",".",".","1",".",".",".",".","23","LYS","CE",".","15060","1"],["32",".","1","1","24","24","ILE","H","H","1","8.033",".",".","1",".",".",".",".","24","ILE","HN",".","15060","1"],["33",".","1","1","24","24","ILE","HA","H","1","3.950",".",".","1",".",".",".",".","24","ILE","HA",".","15060","1"],["34",".","1","1","24","24","ILE","HG21","H","1","0.920",".",".","1",".",".",".",".","24","ILE","HG2",".","15060","1"],["35",".","1","1","24","24","ILE","HG22","H","1","0.920",".",".","1",".",".",".",".","24","ILE","HG2",".","15060","1"],["36",".","1","1","24","24","ILE","HG23","H","1","0.920",".",".","1",".",".",".",".","24","ILE","HG2",".","15060","1"],["37",".","1","1","24","24","ILE","HD11","H","1","0.863",".",".","1",".",".",".",".","24","ILE","HD1",".","15060","1"],["38",".","1","1","24","24","ILE","HD12","H","1","0.863",".",".","1",".",".",".",".","24","ILE","HD1",".","15060","1"],["39",".","1","1","24","24","ILE","HD13","H","1","0.863",".",".","1",".",".",".",".","24","ILE","HD1",".","15060","1"],["40",".","1","1","24","24","ILE","CA","C","13","63.567",".",".","1",".",".",".",".","24","ILE","CA",".","15060","1"],["41",".","1","1","24","24","ILE","CB","C","13","38.124",".",".","1",".",".",".",".","24","ILE","CB",".","15060","1"],["42",".","1","1","24","24","ILE","CG2","C","13","17.230",".",".","1",".",".",".",".","24","ILE","CG2",".","15060","1"],["43",".","1","1","24","24","ILE","CD1","C","13","13.140",".",".","1",".",".",".",".","24","ILE","CD1",".","15060","1"],["44",".","1","1","24","24","ILE","N","N","15","119.731",".",".","1",".",".",".",".","24","ILE","N",".","15060","1"],["45",".","1","1","25","25","GLN","H","H","1","8.021",".",".","1",".",".",".",".","25","GLN","HN",".","15060","1"],["46",".","1","1","25","25","GLN","HA","H","1","4.060",".",".","1",".",".",".",".","25","GLN","HA",".","15060","1"],["47",".","1","1","25","25","GLN","HB2","H","1","2.420",".",".","1",".",".",".",".","25","GLN","HB1",".","15060","1"],["48",".","1","1","25","25","GLN","HB3","H","1","2.420",".",".","1",".",".",".",".","25","GLN","HB2",".","15060","1"],["49",".","1","1","25","25","GLN","HE21","H","1","7.703",".",".","2",".",".",".",".","25","GLN","HE21",".","15060","1"],["50",".","1","1","25","25","GLN","HE22","H","1","6.839",".",".","2",".",".",".",".","25","GLN","HE22",".","15060","1"],["51",".","1","1","25","25","GLN","C","C","13","178.193",".",".","1",".",".",".",".","25","GLN","C",".","15060","1"],["52",".","1","1","25","25","GLN","CA","C","13","58.346",".",".","1",".",".",".",".","25","GLN","CA",".","15060","1"],["53",".","1","1","25","25","GLN","CB","C","13","28.102",".",".","1",".",".",".",".","25","GLN","CB",".","15060","1"],["54",".","1","1","25","25","GLN","CG","C","13","33.570",".",".","1",".",".",".",".","25","GLN","CG",".","15060","1"],["55",".","1","1","25","25","GLN","N","N","15","121.400",".",".","1",".",".",".",".","25","GLN","N",".","15060","1"],["56",".","1","1","25","25","GLN","NE2","N","15","112.158",".",".","1",".",".",".",".","25","GLN","NE2",".","15060","1"],["57",".","1","1","26","26","GLN","H","H","1","8.313",".",".","1",".",".",".",".","26","GLN","HN",".","15060","1"],["58",".","1","1","26","26","GLN","HA","H","1","4.110",".",".","1",".",".",".",".","26","GLN","HA",".","15060","1"],["59",".","1","1","26","26","GLN","HB2","H","1","2.560",".",".","2",".",".",".",".","26","GLN","HB1",".","15060","1"],["60",".","1","1","26","26","GLN","HB3","H","1","2.420",".",".","2",".",".",".",".","26","GLN","HB2",".","15060","1"],["61",".","1","1","26","26","GLN","HE21","H","1","7.393",".",".","2",".",".",".",".","26","GLN","HE21",".","15060","1"],["62",".","1","1","26","26","GLN","HE22","H","1","6.770",".",".","2",".",".",".",".","26","GLN","HE22",".","15060","1"],["63",".","1","1","26","26","GLN","C","C","13","177.820",".",".","1",".",".",".",".","26","GLN","C",".","15060","1"],["64",".","1","1","26","26","GLN","CA","C","13","58.680",".",".","1",".",".",".",".","26","GLN","CA",".","15060","1"],["65",".","1","1","26","26","GLN","CB","C","13","28.504",".",".","1",".",".",".",".","26","GLN","CB",".","15060","1"],["66",".","1","1","26","26","GLN","CG","C","13","34.510",".",".","1",".",".",".",".","26","GLN","CG",".","15060","1"],["67",".","1","1","26","26","GLN","N","N","15","119.279",".",".","1",".",".",".",".","26","GLN","N",".","15060","1"],["68",".","1","1","26","26","GLN","NE2","N","15","111.116",".",".","1",".",".",".",".","26","GLN","NE2",".","15060","1"],["69",".","1","1","27","27","GLU","H","H","1","8.197",".",".","1",".",".",".",".","27","GLU","HN",".","15060","1"],["70",".","1","1","27","27","GLU","HA","H","1","4.097",".",".","1",".",".",".",".","27","GLU","HA",".","15060","1"],["71",".","1","1","27","27","GLU","HB2","H","1","2.290",".",".","2",".",".",".",".","27","GLU","HB1",".","15060","1"],["72",".","1","1","27","27","GLU","HB3","H","1","2.500",".",".","2",".",".",".",".","27","GLU","HB2",".","15060","1"],["73",".","1","1","27","27","GLU","C","C","13","179.687",".",".","1",".",".",".",".","27","GLU","C",".","15060","1"],["74",".","1","1","27","27","GLU","CA","C","13","59.200",".",".","1",".",".",".",".","27","GLU","CA",".","15060","1"],["75",".","1","1","27","27","GLU","CB","C","13","29.287",".",".","1",".",".",".",".","27","GLU","CB",".","15060","1"],["76",".","1","1","27","27","GLU","CG","C","13","36.580",".",".","1",".",".",".",".","27","GLU","CG",".","15060","1"],["77",".","1","1","27","27","GLU","N","N","15","119.648",".",".","1",".",".",".",".","27","GLU","N",".","15060","1"],["78",".","1","1","28","28","ILE","H","H","1","8.021",".",".","1",".",".",".",".","28","ILE","HN",".","15060","1"],["79",".","1","1","28","28","ILE","HA","H","1","4.000",".",".","1",".",".",".",".","28","ILE","HA",".","15060","1"],["80",".","1","1","28","28","ILE","HG21","H","1","0.950",".",".","1",".",".",".",".","28","ILE","HG2",".","15060","1"],["81",".","1","1","28","28","ILE","HG22","H","1","0.950",".",".","1",".",".",".",".","28","ILE","HG2",".","15060","1"],["82",".","1","1","28","28","ILE","HG23","H","1","0.950",".",".","1",".",".",".",".","28","ILE","HG2",".","15060","1"],["83",".","1","1","28","28","ILE","HD11","H","1","0.950",".",".","1",".",".",".",".","28","ILE","HD1",".","15060","1"],["84",".","1","1","28","28","ILE","HD12","H","1","0.950",".",".","1",".",".",".",".","28","ILE","HD1",".","15060","1"],["85",".","1","1","28","28","ILE","HD13","H","1","0.950",".",".","1",".",".",".",".","28","ILE","HD1",".","15060","1"],["86",".","1","1","28","28","ILE","C","C","13","178.465",".",".","1",".",".",".",".","28","ILE","C",".","15060","1"],["87",".","1","1","28","28","ILE","CA","C","13","65.110",".",".","1",".",".",".",".","28","ILE","CA",".","15060","1"],["88",".","1","1","28","28","ILE","CB","C","13","37.963",".",".","1",".",".",".",".","28","ILE","CB",".","15060","1"],["89",".","1","1","28","28","ILE","CG2","C","13","17.510",".",".","1",".",".",".",".","28","ILE","CG2",".","15060","1"],["90",".","1","1","28","28","ILE","CD1","C","13","13.460",".",".","1",".",".",".",".","28","ILE","CD1",".","15060","1"],["91",".","1","1","28","28","ILE","N","N","15","121.869",".",".","1",".",".",".",".","28","ILE","N",".","15060","1"],["92",".","1","1","29","29","GLU","H","H","1","8.269",".",".","1",".",".",".",".","29","GLU","HN",".","15060","1"],["93",".","1","1","29","29","GLU","HA","H","1","4.020",".",".","1",".",".",".",".","29","GLU","HA",".","15060","1"],["94",".","1","1","29","29","GLU","HB2","H","1","2.000",".",".","2",".",".",".",".","29","GLU","HB1",".","15060","1"],["95",".","1","1","29","29","GLU","HB3","H","1","1.880",".",".","2",".",".",".",".","29","GLU","HB2",".","15060","1"],["96",".","1","1","29","29","GLU","HG2","H","1","2.200",".",".","2",".",".",".",".","29","GLU","HG1",".","15060","1"],["97",".","1","1","29","29","GLU","HG3","H","1","2.370",".",".","2",".",".",".",".","29","GLU","HG2",".","15060","1"],["98",".","1","1","29","29","GLU","C","C","13","179.964",".",".","1",".",".",".",".","29","GLU","C",".","15060","1"],["99",".","1","1","29","29","GLU","CA","C","13","59.510",".",".","1",".",".",".",".","29","GLU","CA",".","15060","1"],["100",".","1","1","29","29","GLU","CB","C","13","29.289",".",".","1",".",".",".",".","29","GLU","CB",".","15060","1"],["101",".","1","1","29","29","GLU","CG","C","13","36.580",".",".","1",".",".",".",".","29","GLU","CG",".","15060","1"],["102",".","1","1","29","29","GLU","N","N","15","120.647",".",".","1",".",".",".",".","29","GLU","N",".","15060","1"],["103",".","1","1","30","30","ALA","H","H","1","8.280",".",".","1",".",".",".",".","30","ALA","HN",".","15060","1"],["104",".","1","1","30","30","ALA","HA","H","1","3.840",".",".","1",".",".",".",".","30","ALA","HA",".","15060","1"],["105",".","1","1","30","30","ALA","HB1","H","1","1.428",".",".","1",".",".",".",".","30","ALA","HB",".","15060","1"],["106",".","1","1","30","30","ALA","HB2","H","1","1.428",".",".","1",".",".",".",".","30","ALA","HB",".","15060","1"],["107",".","1","1","30","30","ALA","HB3","H","1","1.428",".",".","1",".",".",".",".","30","ALA","HB",".","15060","1"],["108",".","1","1","30","30","ALA","C","C","13","179.438",".",".","1",".",".",".",".","30","ALA","C",".","15060","1"],["109",".","1","1","30","30","ALA","CA","C","13","54.688",".",".","1",".",".",".",".","30","ALA","CA",".","15060","1"],["110",".","1","1","30","30","ALA","CB","C","13","18.428",".",".","1",".",".",".",".","30","ALA","CB",".","15060","1"],["111",".","1","1","30","30","ALA","N","N","15","122.373",".",".","1",".",".",".",".","30","ALA","N",".","15060","1"],["112",".","1","1","31","31","LYS","H","H","1","7.997",".",".","1",".",".",".",".","31","LYS","HN",".","15060","1"],["113",".","1","1","31","31","LYS","HA","H","1","4.010",".",".","1",".",".",".",".","31","LYS","HA",".","15060","1"],["114",".","1","1","31","31","LYS","HB2","H","1","1.970",".",".","2",".",".",".",".","31","LYS","HB1",".","15060","1"],["115",".","1","1","31","31","LYS","HB3","H","1","2.020",".",".","2",".",".",".",".","31","LYS","HB2",".","15060","1"],["116",".","1","1","31","31","LYS","HG2","H","1","0.866",".",".","2",".",".",".",".","31","LYS","HG1",".","15060","1"],["117",".","1","1","31","31","LYS","HG3","H","1","1.180",".",".","2",".",".",".",".","31","LYS","HG2",".","15060","1"],["118",".","1","1","31","31","LYS","HD2","H","1","1.530",".",".","2",".",".",".",".","31","LYS","HD1",".","15060","1"],["119",".","1","1","31","31","LYS","HD3","H","1","1.470",".",".","2",".",".",".",".","31","LYS","HD2",".","15060","1"],["120",".","1","1","31","31","LYS","HE2","H","1","2.990",".",".","2",".",".",".",".","31","LYS","HE1",".","15060","1"],["121",".","1","1","31","31","LYS","HE3","H","1","2.870",".",".","2",".",".",".",".","31","LYS","HE2",".","15060","1"],["122",".","1","1","31","31","LYS","CA","C","13","59.510",".",".","1",".",".",".",".","31","LYS","CA",".","15060","1"],["123",".","1","1","31","31","LYS","CB","C","13","32.153",".",".","1",".",".",".",".","31","LYS","CB",".","15060","1"],["124",".","1","1","31","31","LYS","CG","C","13","28.700",".",".","1",".",".",".",".","31","LYS","CG",".","15060","1"],["125",".","1","1","31","31","LYS","CD","C","13","25.070",".",".","1",".",".",".",".","31","LYS","CD",".","15060","1"],["126",".","1","1","31","31","LYS","CE","C","13","42.080",".",".","1",".",".",".",".","31","LYS","CE",".","15060","1"],["127",".","1","1","31","31","LYS","N","N","15","120.697",".",".","1",".",".",".",".","31","LYS","N",".","15060","1"],["128",".","1","1","32","32","GLU","H","H","1","8.236",".",".","1",".",".",".",".","32","GLU","HN",".","15060","1"],["129",".","1","1","32","32","GLU","HA","H","1","4.080",".",".","1",".",".",".",".","32","GLU","HA",".","15060","1"],["130",".","1","1","32","32","GLU","HB2","H","1","2.110",".",".","1",".",".",".",".","32","GLU","HB1",".","15060","1"],["131",".","1","1","32","32","GLU","HB3","H","1","2.110",".",".","1",".",".",".",".","32","GLU","HB2",".","15060","1"],["132",".","1","1","32","32","GLU","HG2","H","1","2.310",".",".","2",".",".",".",".","32","GLU","HG1",".","15060","1"],["133",".","1","1","32","32","GLU","HG3","H","1","2.550",".",".","2",".",".",".",".","32","GLU","HG2",".","15060","1"],["134",".","1","1","32","32","GLU","CA","C","13","59.970",".",".","1",".",".",".",".","32","GLU","CA",".","15060","1"],["135",".","1","1","32","32","GLU","CB","C","13","28.940",".",".","1",".",".",".",".","32","GLU","CB",".","15060","1"],["136",".","1","1","32","32","GLU","CG","C","13","36.728",".",".","1",".",".",".",".","32","GLU","CG",".","15060","1"],["137",".","1","1","32","32","GLU","N","N","15","118.525",".",".","1",".",".",".",".","32","GLU","N",".","15060","1"],["138",".","1","1","33","33","ALA","H","H","1","7.897",".",".","1",".",".",".",".","33","ALA","HN",".","15060","1"],["139",".","1","1","33","33","ALA","HA","H","1","3.840",".",".","1",".",".",".",".","33","ALA","HA",".","15060","1"],["140",".","1","1","33","33","ALA","HB1","H","1","1.451",".",".","1",".",".",".",".","33","ALA","HB",".","15060","1"],["141",".","1","1","33","33","ALA","HB2","H","1","1.451",".",".","1",".",".",".",".","33","ALA","HB",".","15060","1"],["142",".","1","1","33","33","ALA","HB3","H","1","1.451",".",".","1",".",".",".",".","33","ALA","HB",".","15060","1"],["143",".","1","1","33","33","ALA","C","C","13","179.722",".",".","1",".",".",".",".","33","ALA","C",".","15060","1"],["144",".","1","1","33","33","ALA","CA","C","13","55.470",".",".","1",".",".",".",".","33","ALA","CA",".","15060","1"],["145",".","1","1","33","33","ALA","CB","C","13","17.690",".",".","1",".",".",".",".","33","ALA","CB",".","15060","1"],["146",".","1","1","33","33","ALA","N","N","15","121.629",".",".","1",".",".",".",".","33","ALA","N",".","15060","1"],["147",".","1","1","34","34","CYS","H","H","1","8.451",".",".","1",".",".",".",".","34","CYS","HN",".","15060","1"],["148",".","1","1","34","34","CYS","HB2","H","1","3.280",".",".","2",".",".",".",".","34","CYS","HB1",".","15060","1"],["149",".","1","1","34","34","CYS","HB3","H","1","2.790",".",".","2",".",".",".",".","34","CYS","HB2",".","15060","1"],["150",".","1","1","34","34","CYS","C","C","13","176.650",".",".","1",".",".",".",".","34","CYS","C",".","15060","1"],["151",".","1","1","34","34","CYS","CA","C","13","65.657",".",".","1",".",".",".",".","34","CYS","CA",".","15060","1"],["152",".","1","1","34","34","CYS","CB","C","13","27.250",".",".","1",".",".",".",".","34","CYS","CB",".","15060","1"],["153",".","1","1","34","34","CYS","N","N","15","116.884",".",".","1",".",".",".",".","34","CYS","N",".","15060","1"],["154",".","1","1","35","35","ASP","H","H","1","8.796",".",".","1",".",".",".",".","35","ASP","HN",".","15060","1"],["155",".","1","1","35","35","ASP","HA","H","1","4.370",".",".","1",".",".",".",".","35","ASP","HA",".","15060","1"],["156",".","1","1","35","35","ASP","HB2","H","1","2.940",".",".","2",".",".",".",".","35","ASP","HB1",".","15060","1"],["157",".","1","1","35","35","ASP","HB3","H","1","2.710",".",".","2",".",".",".",".","35","ASP","HB2",".","15060","1"],["158",".","1","1","35","35","ASP","CA","C","13","57.540",".",".","1",".",".",".",".","35","ASP","CA",".","15060","1"],["159",".","1","1","35","35","ASP","CB","C","13","39.903",".",".","1",".",".",".",".","35","ASP","CB",".","15060","1"],["160",".","1","1","35","35","ASP","N","N","15","120.621",".",".","1",".",".",".",".","35","ASP","N",".","15060","1"],["161",".","1","1","36","36","TRP","H","H","1","8.492",".",".","1",".",".",".",".","36","TRP","HN",".","15060","1"],["162",".","1","1","36","36","TRP","HA","H","1","4.010",".",".","1",".",".",".",".","36","TRP","HA",".","15060","1"],["163",".","1","1","36","36","TRP","HB2","H","1","3.369",".",".","2",".",".",".",".","36","TRP","HB1",".","15060","1"],["164",".","1","1","36","36","TRP","HB3","H","1","3.508",".",".","2",".",".",".",".","36","TRP","HB2",".","15060","1"],["165",".","1","1","36","36","TRP","HD1","H","1","7.312",".",".","1",".",".",".",".","36","TRP","HD1",".","15060","1"],["166",".","1","1","36","36","TRP","HE1","H","1","10.148",".",".","1",".",".",".",".","36","TRP","HE1",".","15060","1"],["167",".","1","1","36","36","TRP","HE3","H","1","6.888",".",".","1",".",".",".",".","36","TRP","HE3",".","15060","1"],["168",".","1","1","36","36","TRP","HZ2","H","1","7.500",".",".","1",".",".",".",".","36","TRP","HZ2",".","15060","1"],["169",".","1","1","36","36","TRP","HZ3","H","1","7.080",".",".","1",".",".",".",".","36","TRP","HZ3",".","15060","1"],["170",".","1","1","36","36","TRP","HH2","H","1","7.065",".",".","1",".",".",".",".","36","TRP","HH2",".","15060","1"],["171",".","1","1","36","36","TRP","CA","C","13","63.045",".",".","1",".",".",".",".","36","TRP","CA",".","15060","1"],["172",".","1","1","36","36","TRP","CB","C","13","29.484",".",".","1",".",".",".",".","36","TRP","CB",".","15060","1"],["173",".","1","1","36","36","TRP","N","N","15","122.912",".",".","1",".",".",".",".","36","TRP","N",".","15060","1"],["174",".","1","1","36","36","TRP","NE1","N","15","130.106",".",".","1",".",".",".",".","36","TRP","NE1",".","15060","1"],["175",".","1","1","37","37","LEU","H","H","1","8.733",".",".","1",".",".",".",".","37","LEU","HN",".","15060","1"],["176",".","1","1","37","37","LEU","HA","H","1","4.050",".",".","1",".",".",".",".","37","LEU","HA",".","15060","1"],["177",".","1","1","37","37","LEU","HB2","H","1","2.230",".",".","2",".",".",".",".","37","LEU","HB1",".","15060","1"],["178",".","1","1","37","37","LEU","HB3","H","1","1.940",".",".","2",".",".",".",".","37","LEU","HB2",".","15060","1"],["179",".","1","1","37","37","LEU","HD11","H","1","1.280",".",".","2",".",".",".",".","37","LEU","HD1",".","15060","1"],["180",".","1","1","37","37","LEU","HD12","H","1","1.280",".",".","2",".",".",".",".","37","LEU","HD1",".","15060","1"],["181",".","1","1","37","37","LEU","HD13","H","1","1.280",".",".","2",".",".",".",".","37","LEU","HD1",".","15060","1"],["182",".","1","1","37","37","LEU","HD21","H","1","0.880",".",".","2",".",".",".",".","37","LEU","HD2",".","15060","1"],["183",".","1","1","37","37","LEU","HD22","H","1","0.880",".",".","2",".",".",".",".","37","LEU","HD2",".","15060","1"],["184",".","1","1","37","37","LEU","HD23","H","1","0.880",".",".","2",".",".",".",".","37","LEU","HD2",".","15060","1"],["185",".","1","1","37","37","LEU","CA","C","13","58.680",".",".","1",".",".",".",".","37","LEU","CA",".","15060","1"],["186",".","1","1","37","37","LEU","CB","C","13","41.367",".",".","1",".",".",".",".","37","LEU","CB",".","15060","1"],["187",".","1","1","37","37","LEU","CD1","C","13","25.285",".",".","1",".",".",".",".","37","LEU","CD1",".","15060","1"],["188",".","1","1","37","37","LEU","CD2","C","13","27.414",".",".","1",".",".",".",".","37","LEU","CD2",".","15060","1"],["189",".","1","1","37","37","LEU","N","N","15","118.921",".",".","1",".",".",".",".","37","LEU","N",".","15060","1"],["190",".","1","1","38","38","ARG","H","H","1","8.032",".",".","1",".",".",".",".","38","ARG","HN",".","15060","1"],["191",".","1","1","38","38","ARG","HA","H","1","3.640",".",".","1",".",".",".",".","38","ARG","HA",".","15060","1"],["192",".","1","1","38","38","ARG","HB2","H","1","1.910",".",".","1",".",".",".",".","38","ARG","HB1",".","15060","1"],["193",".","1","1","38","38","ARG","HB3","H","1","1.910",".",".","1",".",".",".",".","38","ARG","HB2",".","15060","1"],["194",".","1","1","38","38","ARG","HG2","H","1","1.500",".",".","1",".",".",".",".","38","ARG","HG1",".","15060","1"],["195",".","1","1","38","38","ARG","HG3","H","1","1.500",".",".","1",".",".",".",".","38","ARG","HG2",".","15060","1"],["196",".","1","1","38","38","ARG","HD2","H","1","3.230",".",".","1",".",".",".",".","38","ARG","HD1",".","15060","1"],["197",".","1","1","38","38","ARG","HD3","H","1","3.230",".",".","1",".",".",".",".","38","ARG","HD2",".","15060","1"],["198",".","1","1","38","38","ARG","CA","C","13","61.164",".",".","1",".",".",".",".","38","ARG","CA",".","15060","1"],["199",".","1","1","38","38","ARG","CB","C","13","30.370",".",".","1",".",".",".",".","38","ARG","CB",".","15060","1"],["200",".","1","1","38","38","ARG","CD","C","13","43.171",".",".","1",".",".",".",".","38","ARG","CD",".","15060","1"],["201",".","1","1","38","38","ARG","N","N","15","116.327",".",".","1",".",".",".",".","38","ARG","N",".","15060","1"],["202",".","1","1","39","39","ALA","H","H","1","7.900",".",".","1",".",".",".",".","39","ALA","HN",".","15060","1"],["203",".","1","1","39","39","ALA","HA","H","1","4.030",".",".","1",".",".",".",".","39","ALA","HA",".","15060","1"],["204",".","1","1","39","39","ALA","HB1","H","1","1.307",".",".","1",".",".",".",".","39","ALA","HB",".","15060","1"],["205",".","1","1","39","39","ALA","HB2","H","1","1.307",".",".","1",".",".",".",".","39","ALA","HB",".","15060","1"],["206",".","1","1","39","39","ALA","HB3","H","1","1.307",".",".","1",".",".",".",".","39","ALA","HB",".","15060","1"],["207",".","1","1","39","39","ALA","C","C","13","178.908",".",".","1",".",".",".",".","39","ALA","C",".","15060","1"],["208",".","1","1","39","39","ALA","CA","C","13","54.507",".",".","1",".",".",".",".","39","ALA","CA",".","15060","1"],["209",".","1","1","39","39","ALA","CB","C","13","18.110",".",".","1",".",".",".",".","39","ALA","CB",".","15060","1"],["210",".","1","1","39","39","ALA","N","N","15","122.812",".",".","1",".",".",".",".","39","ALA","N",".","15060","1"],["211",".","1","1","40","40","ALA","H","H","1","8.067",".",".","1",".",".",".",".","40","ALA","HN",".","15060","1"],["212",".","1","1","40","40","ALA","HA","H","1","3.930",".",".","1",".",".",".",".","40","ALA","HA",".","15060","1"],["213",".","1","1","40","40","ALA","HB1","H","1","0.440",".",".","1",".",".",".",".","40","ALA","HB",".","15060","1"],["214",".","1","1","40","40","ALA","HB2","H","1","0.440",".",".","1",".",".",".",".","40","ALA","HB",".","15060","1"],["215",".","1","1","40","40","ALA","HB3","H","1","0.440",".",".","1",".",".",".",".","40","ALA","HB",".","15060","1"],["216",".","1","1","40","40","ALA","C","C","13","176.516",".",".","1",".",".",".",".","40","ALA","C",".","15060","1"],["217",".","1","1","40","40","ALA","CA","C","13","51.929",".",".","1",".",".",".",".","40","ALA","CA",".","15060","1"],["218",".","1","1","40","40","ALA","CB","C","13","18.100",".",".","1",".",".",".",".","40","ALA","CB",".","15060","1"],["219",".","1","1","40","40","ALA","N","N","15","118.343",".",".","1",".",".",".",".","40","ALA","N",".","15060","1"],["220",".","1","1","41","41","GLY","H","H","1","7.093",".",".","1",".",".",".",".","41","GLY","HN",".","15060","1"],["221",".","1","1","41","41","GLY","HA2","H","1","3.920",".",".","2",".",".",".",".","41","GLY","HA1",".","15060","1"],["222",".","1","1","41","41","GLY","HA3","H","1","3.560",".",".","2",".",".",".",".","41","GLY","HA2",".","15060","1"],["223",".","1","1","41","41","GLY","C","C","13","173.204",".",".","1",".",".",".",".","41","GLY","C",".","15060","1"],["224",".","1","1","41","41","GLY","CA","C","13","44.660",".",".","1",".",".",".",".","41","GLY","CA",".","15060","1"],["225",".","1","1","41","41","GLY","N","N","15","101.824",".",".","1",".",".",".",".","41","GLY","N",".","15060","1"],["226",".","1","1","42","42","PHE","H","H","1","8.648",".",".","1",".",".",".",".","42","PHE","HN",".","15060","1"],["227",".","1","1","42","42","PHE","HA","H","1","5.222",".",".","1",".",".",".",".","42","PHE","HA",".","15060","1"],["228",".","1","1","42","42","PHE","HB2","H","1","3.500",".",".","2",".",".",".",".","42","PHE","HB1",".","15060","1"],["229",".","1","1","42","42","PHE","HB3","H","1","2.980",".",".","2",".",".",".",".","42","PHE","HB2",".","15060","1"],["230",".","1","1","42","42","PHE","HD1","H","1","7.093",".",".","3",".",".",".",".","42","PHE","HD1",".","15060","1"],["231",".","1","1","42","42","PHE","HE1","H","1","7.174",".",".","3",".",".",".",".","42","PHE","HE1",".","15060","1"],["232",".","1","1","42","42","PHE","HZ","H","1","7.164",".",".","1",".",".",".",".","42","PHE","HZ",".","15060","1"],["233",".","1","1","42","42","PHE","CA","C","13","54.796",".",".","1",".",".",".",".","42","PHE","CA",".","15060","1"],["234",".","1","1","42","42","PHE","CB","C","13","40.411",".",".","1",".",".",".",".","42","PHE","CB",".","15060","1"],["235",".","1","1","42","42","PHE","N","N","15","118.308",".",".","1",".",".",".",".","42","PHE","N",".","15060","1"],["236",".","1","1","43","43","PRO","HA","H","1","4.040",".",".","1",".",".",".",".","43","PRO","HA",".","15060","1"],["237",".","1","1","43","43","PRO","HB2","H","1","1.780",".",".","2",".",".",".",".","43","PRO","HB1",".","15060","1"],["238",".","1","1","43","43","PRO","HB3","H","1","1.600",".",".","2",".",".",".",".","43","PRO","HB2",".","15060","1"],["239",".","1","1","43","43","PRO","HG2","H","1","2.140",".",".","2",".",".",".",".","43","PRO","HG1",".","15060","1"],["240",".","1","1","43","43","PRO","HG3","H","1","2.190",".",".","2",".",".",".",".","43","PRO","HG2",".","15060","1"],["241",".","1","1","43","43","PRO","HD2","H","1","2.970",".",".","2",".",".",".",".","43","PRO","HD2",".","15060","1"],["242",".","1","1","43","43","PRO","C","C","13","177.948",".",".","1",".",".",".",".","43","PRO","C",".","15060","1"],["243",".","1","1","43","43","PRO","CA","C","13","65.740",".",".","1",".",".",".",".","43","PRO","CA",".","15060","1"],["244",".","1","1","43","43","PRO","CB","C","13","31.390",".",".","1",".",".",".",".","43","PRO","CB",".","15060","1"],["245",".","1","1","43","43","PRO","CG","C","13","27.140",".",".","1",".",".",".",".","43","PRO","CG",".","15060","1"],["246",".","1","1","43","43","PRO","CD","C","13","50.790",".",".","1",".",".",".",".","43","PRO","CD",".","15060","1"],["247",".","1","1","44","44","GLN","H","H","1","10.134",".",".","1",".",".",".",".","44","GLN","HN",".","15060","1"],["248",".","1","1","44","44","GLN","HA","H","1","4.280",".",".","1",".",".",".",".","44","GLN","HA",".","15060","1"],["249",".","1","1","44","44","GLN","HB2","H","1","1.600",".",".","1",".",".",".",".","44","GLN","HB1",".","15060","1"],["250",".","1","1","44","44","GLN","HB3","H","1","1.600",".",".","1",".",".",".",".","44","GLN","HB2",".","15060","1"],["251",".","1","1","44","44","GLN","HG2","H","1","2.340",".",".","1",".",".",".",".","44","GLN","HG1",".","15060","1"],["252",".","1","1","44","44","GLN","HG3","H","1","2.340",".",".","1",".",".",".",".","44","GLN","HG2",".","15060","1"],["253",".","1","1","44","44","GLN","HE21","H","1","7.600",".",".","2",".",".",".",".","44","GLN","HE21",".","15060","1"],["254",".","1","1","44","44","GLN","HE22","H","1","7.526",".",".","2",".",".",".",".","44","GLN","HE22",".","15060","1"],["255",".","1","1","44","44","GLN","C","C","13","177.986",".",".","1",".",".",".",".","44","GLN","C",".","15060","1"],["256",".","1","1","44","44","GLN","CA","C","13","58.060",".",".","1",".",".",".",".","44","GLN","CA",".","15060","1"],["257",".","1","1","44","44","GLN","CB","C","13","26.080",".",".","1",".",".",".",".","44","GLN","CB",".","15060","1"],["258",".","1","1","44","44","GLN","CG","C","13","31.780",".",".","1",".",".",".",".","44","GLN","CG",".","15060","1"],["259",".","1","1","44","44","GLN","N","N","15","121.355",".",".","1",".",".",".",".","44","GLN","N",".","15060","1"],["260",".","1","1","44","44","GLN","NE2","N","15","111.932",".",".","1",".",".",".",".","44","GLN","NE2",".","15060","1"],["261",".","1","1","45","45","TYR","H","H","1","7.241",".",".","1",".",".",".",".","45","TYR","HN",".","15060","1"],["262",".","1","1","45","45","TYR","HA","H","1","4.790",".",".","1",".",".",".",".","45","TYR","HA",".","15060","1"],["263",".","1","1","45","45","TYR","HB2","H","1","3.320",".",".","2",".",".",".",".","45","TYR","HB1",".","15060","1"],["264",".","1","1","45","45","TYR","HB3","H","1","3.030",".",".","2",".",".",".",".","45","TYR","HB2",".","15060","1"],["265",".","1","1","45","45","TYR","HD1","H","1","7.135",".",".","3",".",".",".",".","45","TYR","HD1",".","15060","1"],["266",".","1","1","45","45","TYR","HE1","H","1","6.846",".",".","3",".",".",".",".","45","TYR","HE1",".","15060","1"],["267",".","1","1","45","45","TYR","C","C","13","176.869",".",".","1",".",".",".",".","45","TYR","C",".","15060","1"],["268",".","1","1","45","45","TYR","CA","C","13","60.770",".",".","1",".",".",".",".","45","TYR","CA",".","15060","1"],["269",".","1","1","45","45","TYR","CB","C","13","39.240",".",".","1",".",".",".",".","45","TYR","CB",".","15060","1"],["270",".","1","1","45","45","TYR","N","N","15","119.170",".",".","1",".",".",".",".","45","TYR","N",".","15060","1"],["271",".","1","1","46","46","ALA","H","H","1","6.875",".",".","1",".",".",".",".","46","ALA","HN",".","15060","1"],["272",".","1","1","46","46","ALA","HA","H","1","4.310",".",".","1",".",".",".",".","46","ALA","HA",".","15060","1"],["273",".","1","1","46","46","ALA","HB1","H","1","1.600",".",".","1",".",".",".",".","46","ALA","HB",".","15060","1"],["274",".","1","1","46","46","ALA","HB2","H","1","1.600",".",".","1",".",".",".",".","46","ALA","HB",".","15060","1"],["275",".","1","1","46","46","ALA","HB3","H","1","1.600",".",".","1",".",".",".",".","46","ALA","HB",".","15060","1"],["276",".","1","1","46","46","ALA","C","C","13","178.737",".",".","1",".",".",".",".","46","ALA","C",".","15060","1"],["277",".","1","1","46","46","ALA","CA","C","13","54.908",".",".","1",".",".",".",".","46","ALA","CA",".","15060","1"],["278",".","1","1","46","46","ALA","CB","C","13","18.500",".",".","1",".",".",".",".","46","ALA","CB",".","15060","1"],["279",".","1","1","46","46","ALA","N","N","15","121.385",".",".","1",".",".",".",".","46","ALA","N",".","15060","1"],["280",".","1","1","47","47","GLN","H","H","1","8.114",".",".","1",".",".",".",".","47","GLN","HN",".","15060","1"],["281",".","1","1","47","47","GLN","HA","H","1","3.910",".",".","1",".",".",".",".","47","GLN","HA",".","15060","1"],["282",".","1","1","47","47","GLN","HB2","H","1","2.190",".",".","2",".",".",".",".","47","GLN","HB1",".","15060","1"],["283",".","1","1","47","47","GLN","HB3","H","1","2.090",".",".","2",".",".",".",".","47","GLN","HB2",".","15060","1"],["284",".","1","1","47","47","GLN","HG2","H","1","2.420",".",".","1",".",".",".",".","47","GLN","HG1",".","15060","1"],["285",".","1","1","47","47","GLN","HG3","H","1","2.420",".",".","1",".",".",".",".","47","GLN","HG2",".","15060","1"],["286",".","1","1","47","47","GLN","HE21","H","1","7.884",".",".","2",".",".",".",".","47","GLN","HE21",".","15060","1"],["287",".","1","1","47","47","GLN","HE22","H","1","6.867",".",".","2",".",".",".",".","47","GLN","HE22",".","15060","1"],["288",".","1","1","47","47","GLN","C","C","13","177.788",".",".","1",".",".",".",".","47","GLN","C",".","15060","1"],["289",".","1","1","47","47","GLN","CA","C","13","58.470",".",".","1",".",".",".",".","47","GLN","CA",".","15060","1"],["290",".","1","1","47","47","GLN","CB","C","13","28.181",".",".","1",".",".",".",".","47","GLN","CB",".","15060","1"],["291",".","1","1","47","47","GLN","CG","C","13","33.270",".",".","1",".",".",".",".","47","GLN","CG",".","15060","1"],["292",".","1","1","47","47","GLN","N","N","15","117.390",".",".","1",".",".",".",".","47","GLN","N",".","15060","1"],["293",".","1","1","47","47","GLN","NE2","N","15","115.368",".",".","1",".",".",".",".","47","GLN","NE2",".","15060","1"],["294",".","1","1","48","48","LEU","H","H","1","7.831",".",".","1",".",".",".",".","48","LEU","HN",".","15060","1"],["295",".","1","1","48","48","LEU","HA","H","1","4.760",".",".","1",".",".",".",".","48","LEU","HA",".","15060","1"],["296",".","1","1","48","48","LEU","HG","H","1","1.930",".",".","1",".",".",".",".","48","LEU","HG",".","15060","1"],["297",".","1","1","48","48","LEU","HD11","H","1","0.950",".",".","2",".",".",".",".","48","LEU","HD1",".","15060","1"],["298",".","1","1","48","48","LEU","HD12","H","1","0.950",".",".","2",".",".",".",".","48","LEU","HD1",".","15060","1"],["299",".","1","1","48","48","LEU","HD13","H","1","0.950",".",".","2",".",".",".",".","48","LEU","HD1",".","15060","1"],["300",".","1","1","48","48","LEU","HD21","H","1","0.970",".",".","2",".",".",".",".","48","LEU","HD2",".","15060","1"],["301",".","1","1","48","48","LEU","HD22","H","1","0.970",".",".","2",".",".",".",".","48","LEU","HD2",".","15060","1"],["302",".","1","1","48","48","LEU","HD23","H","1","0.970",".",".","2",".",".",".",".","48","LEU","HD2",".","15060","1"],["303",".","1","1","48","48","LEU","CA","C","13","58.303",".",".","1",".",".",".",".","48","LEU","CA",".","15060","1"],["304",".","1","1","48","48","LEU","CB","C","13","43.630",".",".","1",".",".",".",".","48","LEU","CB",".","15060","1"],["305",".","1","1","48","48","LEU","CG","C","13","27.530",".",".","1",".",".",".",".","48","LEU","CG",".","15060","1"],["306",".","1","1","48","48","LEU","CD1","C","13","23.762",".",".","1",".",".",".",".","48","LEU","CD1",".","15060","1"],["307",".","1","1","48","48","LEU","CD2","C","13","25.460",".",".","1",".",".",".",".","48","LEU","CD2",".","15060","1"],["308",".","1","1","48","48","LEU","N","N","15","118.032",".",".","1",".",".",".",".","48","LEU","N",".","15060","1"],["309",".","1","1","49","49","TYR","H","H","1","7.761",".",".","1",".",".",".",".","49","TYR","HN",".","15060","1"],["310",".","1","1","49","49","TYR","HA","H","1","3.920",".",".","1",".",".",".",".","49","TYR","HA",".","15060","1"],["311",".","1","1","49","49","TYR","HB2","H","1","2.150",".",".","2",".",".",".",".","49","TYR","HB1",".","15060","1"],["312",".","1","1","49","49","TYR","HB3","H","1","2.930",".",".","2",".",".",".",".","49","TYR","HB2",".","15060","1"],["313",".","1","1","49","49","TYR","HD1","H","1","6.400",".",".","3",".",".",".",".","49","TYR","HD1",".","15060","1"],["314",".","1","1","49","49","TYR","HE1","H","1","6.652",".",".","3",".",".",".",".","49","TYR","HE1",".","15060","1"],["315",".","1","1","49","49","TYR","C","C","13","180.267",".",".","1",".",".",".",".","49","TYR","C",".","15060","1"],["316",".","1","1","49","49","TYR","CA","C","13","62.289",".",".","1",".",".",".",".","49","TYR","CA",".","15060","1"],["317",".","1","1","49","49","TYR","CB","C","13","37.537",".",".","1",".",".",".",".","49","TYR","CB",".","15060","1"],["318",".","1","1","49","49","TYR","CE1","C","13","115.708",".",".","3",".",".",".",".","49","TYR","CE1",".","15060","1"],["319",".","1","1","49","49","TYR","N","N","15","119.359",".",".","1",".",".",".",".","49","TYR","N",".","15060","1"],["320",".","1","1","50","50","GLU","H","H","1","8.499",".",".","1",".",".",".",".","50","GLU","HN",".","15060","1"],["321",".","1","1","50","50","GLU","HA","H","1","3.860",".",".","1",".",".",".",".","50","GLU","HA",".","15060","1"],["322",".","1","1","50","50","GLU","HB2","H","1","2.170",".",".","2",".",".",".",".","50","GLU","HB1",".","15060","1"],["323",".","1","1","50","50","GLU","HB3","H","1","2.090",".",".","2",".",".",".",".","50","GLU","HB2",".","15060","1"],["324",".","1","1","50","50","GLU","HG2","H","1","2.400",".",".","2",".",".",".",".","50","GLU","HG1",".","15060","1"],["325",".","1","1","50","50","GLU","HG3","H","1","2.740",".",".","2",".",".",".",".","50","GLU","HG2",".","15060","1"],["326",".","1","1","50","50","GLU","C","C","13","177.479",".",".","1",".",".",".",".","50","GLU","C",".","15060","1"],["327",".","1","1","50","50","GLU","CA","C","13","59.232",".",".","1",".",".",".",".","50","GLU","CA",".","15060","1"],["328",".","1","1","50","50","GLU","CB","C","13","28.792",".",".","1",".",".",".",".","50","GLU","CB",".","15060","1"],["329",".","1","1","50","50","GLU","CG","C","13","37.102",".",".","1",".",".",".",".","50","GLU","CG",".","15060","1"],["330",".","1","1","50","50","GLU","N","N","15","123.085",".",".","1",".",".",".",".","50","GLU","N",".","15060","1"],["331",".","1","1","51","51","ASP","H","H","1","8.126",".",".","1",".",".",".",".","51","ASP","HN",".","15060","1"],["332",".","1","1","51","51","ASP","HA","H","1","4.850",".",".","1",".",".",".",".","51","ASP","HA",".","15060","1"],["333",".","1","1","51","51","ASP","HB2","H","1","2.980",".",".","2",".",".",".",".","51","ASP","HB1",".","15060","1"],["334",".","1","1","51","51","ASP","HB3","H","1","2.730",".",".","2",".",".",".",".","51","ASP","HB2",".","15060","1"],["335",".","1","1","51","51","ASP","C","C","13","175.657",".",".","1",".",".",".",".","51","ASP","C",".","15060","1"],["336",".","1","1","51","51","ASP","CA","C","13","54.320",".",".","1",".",".",".",".","51","ASP","CA",".","15060","1"],["337",".","1","1","51","51","ASP","CB","C","13","40.650",".",".","1",".",".",".",".","51","ASP","CB",".","15060","1"],["338",".","1","1","51","51","ASP","N","N","15","118.623",".",".","1",".",".",".",".","51","ASP","N",".","15060","1"],["339",".","1","1","52","52","SER","H","H","1","7.882",".",".","1",".",".",".",".","52","SER","HN",".","15060","1"],["340",".","1","1","52","52","SER","HA","H","1","4.380",".",".","1",".",".",".",".","52","SER","HA",".","15060","1"],["341",".","1","1","52","52","SER","HB2","H","1","4.106",".",".","2",".",".",".",".","52","SER","HB1",".","15060","1"],["342",".","1","1","52","52","SER","HB3","H","1","3.833",".",".","2",".",".",".",".","52","SER","HB2",".","15060","1"],["343",".","1","1","52","52","SER","C","C","13","175.316",".",".","1",".",".",".",".","52","SER","C",".","15060","1"],["344",".","1","1","52","52","SER","CA","C","13","59.600",".",".","1",".",".",".",".","52","SER","CA",".","15060","1"],["345",".","1","1","52","52","SER","CB","C","13","61.690",".",".","1",".",".",".",".","52","SER","CB",".","15060","1"],["346",".","1","1","52","52","SER","N","N","15","111.515",".",".","1",".",".",".",".","52","SER","N",".","15060","1"],["347",".","1","1","53","53","GLN","H","H","1","8.169",".",".","1",".",".",".",".","53","GLN","HN",".","15060","1"],["348",".","1","1","53","53","GLN","HA","H","1","4.530",".",".","1",".",".",".",".","53","GLN","HA",".","15060","1"],["349",".","1","1","53","53","GLN","HB2","H","1","2.460",".",".","1",".",".",".",".","53","GLN","HB1",".","15060","1"],["350",".","1","1","53","53","GLN","HB3","H","1","2.460",".",".","1",".",".",".",".","53","GLN","HB2",".","15060","1"],["351",".","1","1","53","53","GLN","HG2","H","1","2.410",".",".","2",".",".",".",".","53","GLN","HG1",".","15060","1"],["352",".","1","1","53","53","GLN","HG3","H","1","2.240",".",".","2",".",".",".",".","53","GLN","HG2",".","15060","1"],["353",".","1","1","53","53","GLN","HE21","H","1","7.337",".",".","2",".",".",".",".","53","GLN","HE21",".","15060","1"],["354",".","1","1","53","53","GLN","HE22","H","1","6.871",".",".","2",".",".",".",".","53","GLN","HE22",".","15060","1"],["355",".","1","1","53","53","GLN","C","C","13","175.714",".",".","1",".",".",".",".","53","GLN","C",".","15060","1"],["356",".","1","1","53","53","GLN","CA","C","13","54.740",".",".","1",".",".",".",".","53","GLN","CA",".","15060","1"],["357",".","1","1","53","53","GLN","CB","C","13","29.200",".",".","1",".",".",".",".","53","GLN","CB",".","15060","1"],["358",".","1","1","53","53","GLN","CG","C","13","33.647",".",".","1",".",".",".",".","53","GLN","CG",".","15060","1"],["359",".","1","1","53","53","GLN","N","N","15","114.417",".",".","1",".",".",".",".","53","GLN","N",".","15060","1"],["360",".","1","1","53","53","GLN","NE2","N","15","113.885",".",".","1",".",".",".",".","53","GLN","NE2",".","15060","1"],["361",".","1","1","54","54","PHE","H","H","1","8.165",".",".","1",".",".",".",".","54","PHE","HN",".","15060","1"],["362",".","1","1","54","54","PHE","HA","H","1","4.326",".",".","1",".",".",".",".","54","PHE","HA",".","15060","1"],["363",".","1","1","54","54","PHE","HB2","H","1","2.637",".",".","2",".",".",".",".","54","PHE","HB1",".","15060","1"],["364",".","1","1","54","54","PHE","HB3","H","1","2.330",".",".","2",".",".",".",".","54","PHE","HB2",".","15060","1"],["365",".","1","1","54","54","PHE","HD1","H","1","7.421",".",".","3",".",".",".",".","54","PHE","HD1",".","15060","1"],["366",".","1","1","54","54","PHE","HE1","H","1","7.603",".",".","3",".",".",".",".","54","PHE","HE1",".","15060","1"],["367",".","1","1","54","54","PHE","HZ","H","1","7.093",".",".","1",".",".",".",".","54","PHE","HZ",".","15060","1"],["368",".","1","1","54","54","PHE","CA","C","13","57.434",".",".","1",".",".",".",".","54","PHE","CA",".","15060","1"],["369",".","1","1","54","54","PHE","CB","C","13","39.409",".",".","1",".",".",".",".","54","PHE","CB",".","15060","1"],["370",".","1","1","54","54","PHE","N","N","15","121.830",".",".","1",".",".",".",".","54","PHE","N",".","15060","1"],["371",".","1","1","55","55","PRO","HA","H","1","4.910",".",".","1",".",".",".",".","55","PRO","HA",".","15060","1"],["372",".","1","1","55","55","PRO","HB2","H","1","2.310",".",".","2",".",".",".",".","55","PRO","HB1",".","15060","1"],["373",".","1","1","55","55","PRO","HB3","H","1","2.010",".",".","2",".",".",".",".","55","PRO","HB2",".","15060","1"],["374",".","1","1","55","55","PRO","HG2","H","1","1.840",".",".","1",".",".",".",".","55","PRO","HG1",".","15060","1"],["375",".","1","1","55","55","PRO","HG3","H","1","1.840",".",".","1",".",".",".",".","55","PRO","HG2",".","15060","1"],["376",".","1","1","55","55","PRO","HD2","H","1","3.620",".",".","2",".",".",".",".","55","PRO","HD1",".","15060","1"],["377",".","1","1","55","55","PRO","HD3","H","1","3.840",".",".","2",".",".",".",".","55","PRO","HD2",".","15060","1"],["378",".","1","1","55","55","PRO","C","C","13","174.820",".",".","1",".",".",".",".","55","PRO","C",".","15060","1"],["379",".","1","1","55","55","PRO","CA","C","13","62.310",".",".","1",".",".",".",".","55","PRO","CA",".","15060","1"],["380",".","1","1","55","55","PRO","CB","C","13","36.270",".",".","1",".",".",".",".","55","PRO","CB",".","15060","1"],["381",".","1","1","55","55","PRO","CG","C","13","24.684",".",".","1",".",".",".",".","55","PRO","CG",".","15060","1"],["382",".","1","1","55","55","PRO","CD","C","13","51.730",".",".","1",".",".",".",".","55","PRO","CD",".","15060","1"],["383",".","1","1","56","56","ILE","H","H","1","8.972",".",".","1",".",".",".",".","56","ILE","HN",".","15060","1"],["384",".","1","1","56","56","ILE","HA","H","1","4.476",".",".","1",".",".",".",".","56","ILE","HA",".","15060","1"],["385",".","1","1","56","56","ILE","HB","H","1","1.040",".",".","1",".",".",".",".","56","ILE","HB",".","15060","1"],["386",".","1","1","56","56","ILE","HG12","H","1","0.490",".",".","1",".",".",".",".","56","ILE","HG11",".","15060","1"],["387",".","1","1","56","56","ILE","HG13","H","1","0.910",".",".","1",".",".",".",".","56","ILE","HG12",".","15060","1"],["388",".","1","1","56","56","ILE","HG21","H","1","0.220",".",".","1",".",".",".",".","56","ILE","HG2",".","15060","1"],["389",".","1","1","56","56","ILE","HG22","H","1","0.220",".",".","1",".",".",".",".","56","ILE","HG2",".","15060","1"],["390",".","1","1","56","56","ILE","HG23","H","1","0.220",".",".","1",".",".",".",".","56","ILE","HG2",".","15060","1"],["391",".","1","1","56","56","ILE","HD11","H","1","0.510",".",".","1",".",".",".",".","56","ILE","HD1",".","15060","1"],["392",".","1","1","56","56","ILE","HD12","H","1","0.510",".",".","1",".",".",".",".","56","ILE","HD1",".","15060","1"],["393",".","1","1","56","56","ILE","HD13","H","1","0.510",".",".","1",".",".",".",".","56","ILE","HD1",".","15060","1"],["394",".","1","1","56","56","ILE","CA","C","13","58.905",".",".","1",".",".",".",".","56","ILE","CA",".","15060","1"],["395",".","1","1","56","56","ILE","CB","C","13","41.243",".",".","1",".",".",".",".","56","ILE","CB",".","15060","1"],["396",".","1","1","56","56","ILE","CG1","C","13","26.346",".",".","1",".",".",".",".","56","ILE","CG1",".","15060","1"],["397",".","1","1","56","56","ILE","CG2","C","13","17.560",".",".","1",".",".",".",".","56","ILE","CG2",".","15060","1"],["398",".","1","1","56","56","ILE","CD1","C","13","15.280",".",".","1",".",".",".",".","56","ILE","CD1",".","15060","1"],["399",".","1","1","56","56","ILE","N","N","15","119.002",".",".","1",".",".",".",".","56","ILE","N",".","15060","1"],["400",".","1","1","57","57","ASN","H","H","1","8.390",".",".","1",".",".",".",".","57","ASN","HN",".","15060","1"],["401",".","1","1","57","57","ASN","HA","H","1","4.660",".",".","1",".",".",".",".","57","ASN","HA",".","15060","1"],["402",".","1","1","57","57","ASN","HB2","H","1","3.010",".",".","2",".",".",".",".","57","ASN","HB1",".","15060","1"],["403",".","1","1","57","57","ASN","HB3","H","1","2.720",".",".","2",".",".",".",".","57","ASN","HB2",".","15060","1"],["404",".","1","1","57","57","ASN","HD21","H","1","7.007",".",".","2",".",".",".",".","57","ASN","HD21",".","15060","1"],["405",".","1","1","57","57","ASN","HD22","H","1","7.710",".",".","2",".",".",".",".","57","ASN","HD22",".","15060","1"],["406",".","1","1","57","57","ASN","C","C","13","175.602",".",".","1",".",".",".",".","57","ASN","C",".","15060","1"],["407",".","1","1","57","57","ASN","CA","C","13","52.500",".",".","1",".",".",".",".","57","ASN","CA",".","15060","1"],["408",".","1","1","57","57","ASN","CB","C","13","38.030",".",".","1",".",".",".",".","57","ASN","CB",".","15060","1"],["409",".","1","1","57","57","ASN","N","N","15","122.152",".",".","1",".",".",".",".","57","ASN","N",".","15060","1"],["410",".","1","1","57","57","ASN","ND2","N","15","111.858",".",".","1",".",".",".",".","57","ASN","ND2",".","15060","1"],["411",".","1","1","58","58","ILE","H","H","1","8.611",".",".","1",".",".",".",".","58","ILE","HN",".","15060","1"],["412",".","1","1","58","58","ILE","HA","H","1","4.360",".",".","1",".",".",".",".","58","ILE","HA",".","15060","1"],["413",".","1","1","58","58","ILE","HB","H","1","1.560",".",".","1",".",".",".",".","58","ILE","HB",".","15060","1"],["414",".","1","1","58","58","ILE","HG21","H","1","0.860",".",".","1",".",".",".",".","58","ILE","HG2",".","15060","1"],["415",".","1","1","58","58","ILE","HG22","H","1","0.860",".",".","1",".",".",".",".","58","ILE","HG2",".","15060","1"],["416",".","1","1","58","58","ILE","HG23","H","1","0.860",".",".","1",".",".",".",".","58","ILE","HG2",".","15060","1"],["417",".","1","1","58","58","ILE","HD11","H","1","0.750",".",".","1",".",".",".",".","58","ILE","HD1",".","15060","1"],["418",".","1","1","58","58","ILE","HD12","H","1","0.750",".",".","1",".",".",".",".","58","ILE","HD1",".","15060","1"],["419",".","1","1","58","58","ILE","HD13","H","1","0.750",".",".","1",".",".",".",".","58","ILE","HD1",".","15060","1"],["420",".","1","1","58","58","ILE","CA","C","13","64.572",".",".","1",".",".",".",".","58","ILE","CA",".","15060","1"],["421",".","1","1","58","58","ILE","CB","C","13","37.000",".",".","1",".",".",".",".","58","ILE","CB",".","15060","1"],["422",".","1","1","58","58","ILE","CG1","C","13","28.920",".",".","1",".",".",".",".","58","ILE","CG1",".","15060","1"],["423",".","1","1","58","58","ILE","CG2","C","13","17.650",".",".","1",".",".",".",".","58","ILE","CG2",".","15060","1"],["424",".","1","1","58","58","ILE","CD1","C","13","12.800",".",".","1",".",".",".",".","58","ILE","CD1",".","15060","1"],["425",".","1","1","58","58","ILE","N","N","15","128.642",".",".","1",".",".",".",".","58","ILE","N",".","15060","1"],["426",".","1","1","59","59","ALA","H","H","1","8.080",".",".","1",".",".",".",".","59","ALA","HN",".","15060","1"],["427",".","1","1","59","59","ALA","HA","H","1","3.970",".",".","1",".",".",".",".","59","ALA","HA",".","15060","1"],["428",".","1","1","59","59","ALA","HB1","H","1","1.450",".",".","1",".",".",".",".","59","ALA","HB",".","15060","1"],["429",".","1","1","59","59","ALA","HB2","H","1","1.450",".",".","1",".",".",".",".","59","ALA","HB",".","15060","1"],["430",".","1","1","59","59","ALA","HB3","H","1","1.450",".",".","1",".",".",".",".","59","ALA","HB",".","15060","1"],["431",".","1","1","59","59","ALA","C","C","13","180.605",".",".","1",".",".",".",".","59","ALA","C",".","15060","1"],["432",".","1","1","59","59","ALA","CA","C","13","55.449",".",".","1",".",".",".",".","59","ALA","CA",".","15060","1"],["433",".","1","1","59","59","ALA","CB","C","13","17.417",".",".","1",".",".",".",".","59","ALA","CB",".","15060","1"],["434",".","1","1","59","59","ALA","N","N","15","122.287",".",".","1",".",".",".",".","59","ALA","N",".","15060","1"],["435",".","1","1","60","60","ALA","H","H","1","7.422",".",".","1",".",".",".",".","60","ALA","HN",".","15060","1"],["436",".","1","1","60","60","ALA","HA","H","1","4.080",".",".","1",".",".",".",".","60","ALA","HA",".","15060","1"],["437",".","1","1","60","60","ALA","HB1","H","1","1.450",".",".","1",".",".",".",".","60","ALA","HB",".","15060","1"],["438",".","1","1","60","60","ALA","HB2","H","1","1.450",".",".","1",".",".",".",".","60","ALA","HB",".","15060","1"],["439",".","1","1","60","60","ALA","HB3","H","1","1.450",".",".","1",".",".",".",".","60","ALA","HB",".","15060","1"],["440",".","1","1","60","60","ALA","C","C","13","179.611",".",".","1",".",".",".",".","60","ALA","C",".","15060","1"],["441",".","1","1","60","60","ALA","CA","C","13","54.596",".",".","1",".",".",".",".","60","ALA","CA",".","15060","1"],["442",".","1","1","60","60","ALA","CB","C","13","18.200",".",".","1",".",".",".",".","60","ALA","CB",".","15060","1"],["443",".","1","1","60","60","ALA","N","N","15","119.996",".",".","1",".",".",".",".","60","ALA","N",".","15060","1"],["444",".","1","1","61","61","VAL","H","H","1","7.380",".",".","1",".",".",".",".","61","VAL","HN",".","15060","1"],["445",".","1","1","61","61","VAL","HA","H","1","3.790",".",".","1",".",".",".",".","61","VAL","HA",".","15060","1"],["446",".","1","1","61","61","VAL","HB","H","1","2.147",".",".","1",".",".",".",".","61","VAL","HB",".","15060","1"],["447",".","1","1","61","61","VAL","HG11","H","1","0.710",".",".","2",".",".",".",".","61","VAL","HG1",".","15060","1"],["448",".","1","1","61","61","VAL","HG12","H","1","0.710",".",".","2",".",".",".",".","61","VAL","HG1",".","15060","1"],["449",".","1","1","61","61","VAL","HG13","H","1","0.710",".",".","2",".",".",".",".","61","VAL","HG1",".","15060","1"],["450",".","1","1","61","61","VAL","HG21","H","1","0.870",".",".","2",".",".",".",".","61","VAL","HG2",".","15060","1"],["451",".","1","1","61","61","VAL","HG22","H","1","0.870",".",".","2",".",".",".",".","61","VAL","HG2",".","15060","1"],["452",".","1","1","61","61","VAL","HG23","H","1","0.870",".",".","2",".",".",".",".","61","VAL","HG2",".","15060","1"],["453",".","1","1","61","61","VAL","C","C","13","178.719",".",".","1",".",".",".",".","61","VAL","C",".","15060","1"],["454",".","1","1","61","61","VAL","CA","C","13","66.094",".",".","1",".",".",".",".","61","VAL","CA",".","15060","1"],["455",".","1","1","61","61","VAL","CB","C","13","31.329",".",".","1",".",".",".",".","61","VAL","CB",".","15060","1"],["456",".","1","1","61","61","VAL","CG1","C","13","20.790",".",".","1",".",".",".",".","61","VAL","CG1",".","15060","1"],["457",".","1","1","61","61","VAL","CG2","C","13","21.750",".",".","1",".",".",".",".","61","VAL","CG2",".","15060","1"],["458",".","1","1","61","61","VAL","N","N","15","119.124",".",".","1",".",".",".",".","61","VAL","N",".","15060","1"],["459",".","1","1","62","62","LYS","H","H","1","8.236",".",".","1",".",".",".",".","62","LYS","HN",".","15060","1"],["460",".","1","1","62","62","LYS","HA","H","1","3.640",".",".","1",".",".",".",".","62","LYS","HA",".","15060","1"],["461",".","1","1","62","62","LYS","HB2","H","1","1.790",".",".","2",".",".",".",".","62","LYS","HB1",".","15060","1"],["462",".","1","1","62","62","LYS","HB3","H","1","1.760",".",".","2",".",".",".",".","62","LYS","HB2",".","15060","1"],["463",".","1","1","62","62","LYS","HG2","H","1","1.630",".",".","1",".",".",".",".","62","LYS","HG1",".","15060","1"],["464",".","1","1","62","62","LYS","HG3","H","1","1.630",".",".","1",".",".",".",".","62","LYS","HG2",".","15060","1"],["465",".","1","1","62","62","LYS","HD2","H","1","1.150",".",".","2",".",".",".",".","62","LYS","HD1",".","15060","1"],["466",".","1","1","62","62","LYS","HD3","H","1","1.470",".",".","2",".",".",".",".","62","LYS","HD2",".","15060","1"],["467",".","1","1","62","62","LYS","HE2","H","1","2.860",".",".","1",".",".",".",".","62","LYS","HE1",".","15060","1"],["468",".","1","1","62","62","LYS","HE3","H","1","2.860",".",".","1",".",".",".",".","62","LYS","HE2",".","15060","1"],["469",".","1","1","62","62","LYS","C","C","13","178.777",".",".","1",".",".",".",".","62","LYS","C",".","15060","1"],["470",".","1","1","62","62","LYS","CA","C","13","60.440",".",".","1",".",".",".",".","62","LYS","CA",".","15060","1"],["471",".","1","1","62","62","LYS","CB","C","13","32.430",".",".","1",".",".",".",".","62","LYS","CB",".","15060","1"],["472",".","1","1","62","62","LYS","CD","C","13","26.170",".",".","1",".",".",".",".","62","LYS","CD",".","15060","1"],["473",".","1","1","62","62","LYS","CE","C","13","41.770",".",".","1",".",".",".",".","62","LYS","CE",".","15060","1"],["474",".","1","1","62","62","LYS","N","N","15","118.525",".",".","1",".",".",".",".","62","LYS","N",".","15060","1"],["475",".","1","1","63","63","LYS","H","H","1","7.435",".",".","1",".",".",".",".","63","LYS","HN",".","15060","1"],["476",".","1","1","63","63","LYS","HA","H","1","4.130",".",".","1",".",".",".",".","63","LYS","HA",".","15060","1"],["477",".","1","1","63","63","LYS","HB2","H","1","1.920",".",".","2",".",".",".",".","63","LYS","HB1",".","15060","1"],["478",".","1","1","63","63","LYS","HB3","H","1","1.870",".",".","2",".",".",".",".","63","LYS","HB2",".","15060","1"],["479",".","1","1","63","63","LYS","HG2","H","1","1.700",".",".","1",".",".",".",".","63","LYS","HG1",".","15060","1"],["480",".","1","1","63","63","LYS","HG3","H","1","1.700",".",".","1",".",".",".",".","63","LYS","HG2",".","15060","1"],["481",".","1","1","63","63","LYS","HD2","H","1","1.500",".",".","2",".",".",".",".","63","LYS","HD1",".","15060","1"],["482",".","1","1","63","63","LYS","HD3","H","1","1.420",".",".","2",".",".",".",".","63","LYS","HD2",".","15060","1"],["483",".","1","1","63","63","LYS","HE2","H","1","2.980",".",".","1",".",".",".",".","63","LYS","HE1",".","15060","1"],["484",".","1","1","63","63","LYS","HE3","H","1","2.980",".",".","1",".",".",".",".","63","LYS","HE2",".","15060","1"],["485",".","1","1","63","63","LYS","C","C","13","178.220",".",".","1",".",".",".",".","63","LYS","C",".","15060","1"],["486",".","1","1","63","63","LYS","CA","C","13","58.338",".",".","1",".",".",".",".","63","LYS","CA",".","15060","1"],["487",".","1","1","63","63","LYS","CB","C","13","32.080",".",".","1",".",".",".",".","63","LYS","CB",".","15060","1"],["488",".","1","1","63","63","LYS","CG","C","13","28.800",".",".","1",".",".",".",".","63","LYS","CG",".","15060","1"],["489",".","1","1","63","63","LYS","CD","C","13","24.650",".",".","1",".",".",".",".","63","LYS","CD",".","15060","1"],["490",".","1","1","63","63","LYS","CE","C","13","41.980",".",".","1",".",".",".",".","63","LYS","CE",".","15060","1"],["491",".","1","1","63","63","LYS","N","N","15","118.030",".",".","1",".",".",".",".","63","LYS","N",".","15060","1"],["492",".","1","1","64","64","ASP","H","H","1","7.921",".",".","1",".",".",".",".","64","ASP","HN",".","15060","1"],["493",".","1","1","64","64","ASP","HA","H","1","4.520",".",".","1",".",".",".",".","64","ASP","HA",".","15060","1"],["494",".","1","1","64","64","ASP","HB2","H","1","2.720",".",".","2",".",".",".",".","64","ASP","HB1",".","15060","1"],["495",".","1","1","64","64","ASP","HB3","H","1","2.480",".",".","2",".",".",".",".","64","ASP","HB2",".","15060","1"],["496",".","1","1","64","64","ASP","C","C","13","176.829",".",".","1",".",".",".",".","64","ASP","C",".","15060","1"],["497",".","1","1","64","64","ASP","CA","C","13","56.085",".",".","1",".",".",".",".","64","ASP","CA",".","15060","1"],["498",".","1","1","64","64","ASP","CB","C","13","40.600",".",".","1",".",".",".",".","64","ASP","CB",".","15060","1"],["499",".","1","1","64","64","ASP","N","N","15","119.109",".",".","1",".",".",".",".","64","ASP","N",".","15060","1"],["500",".","1","1","65","65","HIS","H","H","1","7.564",".",".","1",".",".",".",".","65","HIS","HN",".","15060","1"],["501",".","1","1","65","65","HIS","HA","H","1","4.620",".",".","1",".",".",".",".","65","HIS","HA",".","15060","1"],["502",".","1","1","65","65","HIS","HB2","H","1","3.240",".",".","2",".",".",".",".","65","HIS","HB1",".","15060","1"],["503",".","1","1","65","65","HIS","HB3","H","1","2.610",".",".","2",".",".",".",".","65","HIS","HB2",".","15060","1"],["504",".","1","1","65","65","HIS","HD2","H","1","6.993",".",".","1",".",".",".",".","65","HIS","HD2",".","15060","1"],["505",".","1","1","65","65","HIS","HE1","H","1","7.762",".",".","1",".",".",".",".","65","HIS","HE1",".","15060","1"],["506",".","1","1","65","65","HIS","C","C","13","175.259",".",".","1",".",".",".",".","65","HIS","C",".","15060","1"],["507",".","1","1","65","65","HIS","CA","C","13","56.060",".",".","1",".",".",".",".","65","HIS","CA",".","15060","1"],["508",".","1","1","65","65","HIS","CB","C","13","28.810",".",".","1",".",".",".",".","65","HIS","CB",".","15060","1"],["509",".","1","1","65","65","HIS","CD2","C","13","117.172",".",".","1",".",".",".",".","65","HIS","CD2",".","15060","1"],["510",".","1","1","65","65","HIS","N","N","15","117.388",".",".","1",".",".",".",".","65","HIS","N",".","15060","1"],["511",".","1","1","66","66","ASP","H","H","1","7.723",".",".","1",".",".",".",".","66","ASP","HN",".","15060","1"],["512",".","1","1","66","66","ASP","HA","H","1","4.400",".",".","1",".",".",".",".","66","ASP","HA",".","15060","1"],["513",".","1","1","66","66","ASP","HB2","H","1","2.680",".",".","2",".",".",".",".","66","ASP","HB1",".","15060","1"],["514",".","1","1","66","66","ASP","HB3","H","1","2.760",".",".","2",".",".",".",".","66","ASP","HB2",".","15060","1"],["515",".","1","1","66","66","ASP","C","C","13","176.176",".",".","1",".",".",".",".","66","ASP","C",".","15060","1"],["516",".","1","1","66","66","ASP","CA","C","13","56.330",".",".","1",".",".",".",".","66","ASP","CA",".","15060","1"],["517",".","1","1","66","66","ASP","CB","C","13","40.550",".",".","1",".",".",".",".","66","ASP","CB",".","15060","1"],["518",".","1","1","66","66","ASP","N","N","15","120.613",".",".","1",".",".",".",".","66","ASP","N",".","15060","1"],["519",".","1","1","67","67","PHE","H","H","1","7.553",".",".","1",".",".",".",".","67","PHE","HN",".","15060","1"],["520",".","1","1","67","67","PHE","HA","H","1","4.660",".",".","1",".",".",".",".","67","PHE","HA",".","15060","1"],["521",".","1","1","67","67","PHE","HB2","H","1","3.150",".",".","2",".",".",".",".","67","PHE","HB1",".","15060","1"],["522",".","1","1","67","67","PHE","HB3","H","1","3.260",".",".","2",".",".",".",".","67","PHE","HB2",".","15060","1"],["523",".","1","1","67","67","PHE","HD1","H","1","7.315",".",".","3",".",".",".",".","67","PHE","HD1",".","15060","1"],["524",".","1","1","67","67","PHE","HE1","H","1","7.503",".",".","3",".",".",".",".","67","PHE","HE1",".","15060","1"],["525",".","1","1","67","67","PHE","HZ","H","1","7.420",".",".","1",".",".",".",".","67","PHE","HZ",".","15060","1"],["526",".","1","1","67","67","PHE","C","C","13","175.968",".",".","1",".",".",".",".","67","PHE","C",".","15060","1"],["527",".","1","1","67","67","PHE","CA","C","13","56.610",".",".","1",".",".",".",".","67","PHE","CA",".","15060","1"],["528",".","1","1","67","67","PHE","CB","C","13","38.680",".",".","1",".",".",".",".","67","PHE","CB",".","15060","1"],["529",".","1","1","67","67","PHE","CZ","C","13","132.150",".",".","1",".",".",".",".","67","PHE","CZ",".","15060","1"],["530",".","1","1","67","67","PHE","N","N","15","115.112",".",".","1",".",".",".",".","67","PHE","N",".","15060","1"],["531",".","1","1","68","68","LEU","H","H","1","7.545",".",".","1",".",".",".",".","68","LEU","HN",".","15060","1"],["532",".","1","1","68","68","LEU","HA","H","1","4.370",".",".","1",".",".",".",".","68","LEU","HA",".","15060","1"],["533",".","1","1","68","68","LEU","HB2","H","1","1.740",".",".","2",".",".",".",".","68","LEU","HB1",".","15060","1"],["534",".","1","1","68","68","LEU","HB3","H","1","1.610",".",".","2",".",".",".",".","68","LEU","HB2",".","15060","1"],["535",".","1","1","68","68","LEU","HD11","H","1","1.057",".",".","2",".",".",".",".","68","LEU","HD1",".","15060","1"],["536",".","1","1","68","68","LEU","HD12","H","1","1.057",".",".","2",".",".",".",".","68","LEU","HD1",".","15060","1"],["537",".","1","1","68","68","LEU","HD13","H","1","1.057",".",".","2",".",".",".",".","68","LEU","HD1",".","15060","1"],["538",".","1","1","68","68","LEU","HD21","H","1","0.990",".",".","2",".",".",".",".","68","LEU","HD2",".","15060","1"],["539",".","1","1","68","68","LEU","HD22","H","1","0.990",".",".","2",".",".",".",".","68","LEU","HD2",".","15060","1"],["540",".","1","1","68","68","LEU","HD23","H","1","0.990",".",".","2",".",".",".",".","68","LEU","HD2",".","15060","1"],["541",".","1","1","68","68","LEU","C","C","13","176.928",".",".","1",".",".",".",".","68","LEU","C",".","15060","1"],["542",".","1","1","68","68","LEU","CA","C","13","54.740",".",".","1",".",".",".",".","68","LEU","CA",".","15060","1"],["543",".","1","1","68","68","LEU","CB","C","13","43.450",".",".","1",".",".",".",".","68","LEU","CB",".","15060","1"],["544",".","1","1","68","68","LEU","CD1","C","13","25.430",".",".","1",".",".",".",".","68","LEU","CD1",".","15060","1"],["545",".","1","1","68","68","LEU","CD2","C","13","23.750",".",".","1",".",".",".",".","68","LEU","CD2",".","15060","1"],["546",".","1","1","68","68","LEU","N","N","15","123.253",".",".","1",".",".",".",".","68","LEU","N",".","15060","1"],["547",".","1","1","69","69","GLU","H","H","1","8.659",".",".","1",".",".",".",".","69","GLU","HN",".","15060","1"],["548",".","1","1","69","69","GLU","HA","H","1","4.330",".",".","1",".",".",".",".","69","GLU","HA",".","15060","1"],["549",".","1","1","69","69","GLU","HB2","H","1","2.300",".",".","2",".",".",".",".","69","GLU","HB1",".","15060","1"],["550",".","1","1","69","69","GLU","HB3","H","1","2.130",".",".","2",".",".",".",".","69","GLU","HB2",".","15060","1"],["551",".","1","1","69","69","GLU","HG2","H","1","2.460",".",".","1",".",".",".",".","69","GLU","HG1",".","15060","1"],["552",".","1","1","69","69","GLU","HG3","H","1","2.460",".",".","1",".",".",".",".","69","GLU","HG2",".","15060","1"],["553",".","1","1","69","69","GLU","C","C","13","178.014",".",".","1",".",".",".",".","69","GLU","C",".","15060","1"],["554",".","1","1","69","69","GLU","CA","C","13","56.645",".",".","1",".",".",".",".","69","GLU","CA",".","15060","1"],["555",".","1","1","69","69","GLU","CB","C","13","29.845",".",".","1",".",".",".",".","69","GLU","CB",".","15060","1"],["556",".","1","1","69","69","GLU","CG","C","13","36.720",".",".","1",".",".",".",".","69","GLU","CG",".","15060","1"],["557",".","1","1","69","69","GLU","N","N","15","121.494",".",".","1",".",".",".",".","69","GLU","N",".","15060","1"],["558",".","1","1","70","70","ARG","H","H","1","8.804",".",".","1",".",".",".",".","70","ARG","HN",".","15060","1"],["559",".","1","1","70","70","ARG","HA","H","1","4.040",".",".","1",".",".",".",".","70","ARG","HA",".","15060","1"],["560",".","1","1","70","70","ARG","HB2","H","1","1.950",".",".","1",".",".",".",".","70","ARG","HB1",".","15060","1"],["561",".","1","1","70","70","ARG","HB3","H","1","1.950",".",".","1",".",".",".",".","70","ARG","HB2",".","15060","1"],["562",".","1","1","70","70","ARG","HG2","H","1","1.760",".",".","1",".",".",".",".","70","ARG","HG1",".","15060","1"],["563",".","1","1","70","70","ARG","HG3","H","1","1.760",".",".","1",".",".",".",".","70","ARG","HG2",".","15060","1"],["564",".","1","1","70","70","ARG","HD2","H","1","3.250",".",".","1",".",".",".",".","70","ARG","HD1",".","15060","1"],["565",".","1","1","70","70","ARG","HD3","H","1","3.250",".",".","1",".",".",".",".","70","ARG","HD2",".","15060","1"],["566",".","1","1","70","70","ARG","C","C","13","177.774",".",".","1",".",".",".",".","70","ARG","C",".","15060","1"],["567",".","1","1","70","70","ARG","CA","C","13","59.539",".",".","1",".",".",".",".","70","ARG","CA",".","15060","1"],["568",".","1","1","70","70","ARG","CB","C","13","30.190",".",".","1",".",".",".",".","70","ARG","CB",".","15060","1"],["569",".","1","1","70","70","ARG","CG","C","13","26.730",".",".","1",".",".",".",".","70","ARG","CG",".","15060","1"],["570",".","1","1","70","70","ARG","CD","C","13","43.450",".",".","1",".",".",".",".","70","ARG","CD",".","15060","1"],["571",".","1","1","70","70","ARG","N","N","15","123.728",".",".","1",".",".",".",".","70","ARG","N",".","15060","1"],["572",".","1","1","71","71","ASP","H","H","1","8.691",".",".","1",".",".",".",".","71","ASP","HN",".","15060","1"],["573",".","1","1","71","71","ASP","HA","H","1","4.530",".",".","1",".",".",".",".","71","ASP","HA",".","15060","1"],["574",".","1","1","71","71","ASP","HB2","H","1","2.720",".",".","1",".",".",".",".","71","ASP","HB1",".","15060","1"],["575",".","1","1","71","71","ASP","HB3","H","1","2.720",".",".","1",".",".",".",".","71","ASP","HB2",".","15060","1"],["576",".","1","1","71","71","ASP","C","C","13","176.354",".",".","1",".",".",".",".","71","ASP","C",".","15060","1"],["577",".","1","1","71","71","ASP","CA","C","13","56.041",".",".","1",".",".",".",".","71","ASP","CA",".","15060","1"],["578",".","1","1","71","71","ASP","CB","C","13","40.090",".",".","1",".",".",".",".","71","ASP","CB",".","15060","1"],["579",".","1","1","71","71","ASP","N","N","15","115.520",".",".","1",".",".",".",".","71","ASP","N",".","15060","1"],["580",".","1","1","72","72","LEU","H","H","1","7.912",".",".","1",".",".",".",".","72","LEU","HN",".","15060","1"],["581",".","1","1","72","72","LEU","HA","H","1","4.770",".",".","1",".",".",".",".","72","LEU","HA",".","15060","1"],["582",".","1","1","72","72","LEU","HB2","H","1","1.910",".",".","2",".",".",".",".","72","LEU","HB1",".","15060","1"],["583",".","1","1","72","72","LEU","HB3","H","1","1.940",".",".","2",".",".",".",".","72","LEU","HB2",".","15060","1"],["584",".","1","1","72","72","LEU","HD11","H","1","1.230",".",".","2",".",".",".",".","72","LEU","HD1",".","15060","1"],["585",".","1","1","72","72","LEU","HD12","H","1","1.230",".",".","2",".",".",".",".","72","LEU","HD1",".","15060","1"],["586",".","1","1","72","72","LEU","HD13","H","1","1.230",".",".","2",".",".",".",".","72","LEU","HD1",".","15060","1"],["587",".","1","1","72","72","LEU","HD21","H","1","0.990",".",".","2",".",".",".",".","72","LEU","HD2",".","15060","1"],["588",".","1","1","72","72","LEU","HD22","H","1","0.990",".",".","2",".",".",".",".","72","LEU","HD2",".","15060","1"],["589",".","1","1","72","72","LEU","HD23","H","1","0.990",".",".","2",".",".",".",".","72","LEU","HD2",".","15060","1"],["590",".","1","1","72","72","LEU","CA","C","13","55.418",".",".","1",".",".",".",".","72","LEU","CA",".","15060","1"],["591",".","1","1","72","72","LEU","CB","C","13","43.630",".",".","1",".",".",".",".","72","LEU","CB",".","15060","1"],["592",".","1","1","72","72","LEU","CD1","C","13","25.150",".",".","1",".",".",".",".","72","LEU","CD1",".","15060","1"],["593",".","1","1","72","72","LEU","CD2","C","13","24.030",".",".","1",".",".",".",".","72","LEU","CD2",".","15060","1"],["594",".","1","1","72","72","LEU","N","N","15","118.675",".",".","1",".",".",".",".","72","LEU","N",".","15060","1"],["595",".","1","1","73","73","VAL","H","H","1","7.761",".",".","1",".",".",".",".","73","VAL","HN",".","15060","1"],["596",".","1","1","73","73","VAL","HA","H","1","3.550",".",".","1",".",".",".",".","73","VAL","HA",".","15060","1"],["597",".","1","1","73","73","VAL","HB","H","1","2.040",".",".","1",".",".",".",".","73","VAL","HB",".","15060","1"],["598",".","1","1","73","73","VAL","HG11","H","1","0.920",".",".","2",".",".",".",".","73","VAL","HG1",".","15060","1"],["599",".","1","1","73","73","VAL","HG12","H","1","0.920",".",".","2",".",".",".",".","73","VAL","HG1",".","15060","1"],["600",".","1","1","73","73","VAL","HG13","H","1","0.920",".",".","2",".",".",".",".","73","VAL","HG1",".","15060","1"],["601",".","1","1","73","73","VAL","HG21","H","1","0.990",".",".","2",".",".",".",".","73","VAL","HG2",".","15060","1"],["602",".","1","1","73","73","VAL","HG22","H","1","0.990",".",".","2",".",".",".",".","73","VAL","HG2",".","15060","1"],["603",".","1","1","73","73","VAL","HG23","H","1","0.990",".",".","2",".",".",".",".","73","VAL","HG2",".","15060","1"],["604",".","1","1","73","73","VAL","C","C","13","176.976",".",".","1",".",".",".",".","73","VAL","C",".","15060","1"],["605",".","1","1","73","73","VAL","CA","C","13","66.980",".",".","1",".",".",".",".","73","VAL","CA",".","15060","1"],["606",".","1","1","73","73","VAL","CB","C","13","32.020",".",".","1",".",".",".",".","73","VAL","CB",".","15060","1"],["607",".","1","1","73","73","VAL","CG1","C","13","21.600",".",".","1",".",".",".",".","73","VAL","CG1",".","15060","1"],["608",".","1","1","73","73","VAL","CG2","C","13","23.660",".",".","1",".",".",".",".","73","VAL","CG2",".","15060","1"],["609",".","1","1","73","73","VAL","N","N","15","119.359",".",".","1",".",".",".",".","73","VAL","N",".","15060","1"],["610",".","1","1","74","74","GLU","H","H","1","8.615",".",".","1",".",".",".",".","74","GLU","HN",".","15060","1"],["611",".","1","1","74","74","GLU","HA","H","1","4.190",".",".","1",".",".",".",".","74","GLU","HA",".","15060","1"],["612",".","1","1","74","74","GLU","HB2","H","1","2.079",".",".","1",".",".",".",".","74","GLU","HB1",".","15060","1"],["613",".","1","1","74","74","GLU","HB3","H","1","2.079",".",".","1",".",".",".",".","74","GLU","HB2",".","15060","1"],["614",".","1","1","74","74","GLU","CA","C","13","61.633",".",".","1",".",".",".",".","74","GLU","CA",".","15060","1"],["615",".","1","1","74","74","GLU","CB","C","13","26.038",".",".","1",".",".",".",".","74","GLU","CB",".","15060","1"],["616",".","1","1","74","74","GLU","N","N","15","119.749",".",".","1",".",".",".",".","74","GLU","N",".","15060","1"],["617",".","1","1","75","75","PRO","HA","H","1","4.280",".",".","1",".",".",".",".","75","PRO","HA",".","15060","1"],["618",".","1","1","75","75","PRO","HB2","H","1","1.610",".",".","1",".",".",".",".","75","PRO","HB1",".","15060","1"],["619",".","1","1","75","75","PRO","HB3","H","1","1.610",".",".","1",".",".",".",".","75","PRO","HB2",".","15060","1"],["620",".","1","1","75","75","PRO","HD3","H","1","2.350",".",".","1",".",".",".",".","75","PRO","HD2",".","15060","1"],["621",".","1","1","75","75","PRO","C","C","13","178.634",".",".","1",".",".",".",".","75","PRO","C",".","15060","1"],["622",".","1","1","75","75","PRO","CA","C","13","66.150",".",".","1",".",".",".",".","75","PRO","CA",".","15060","1"],["623",".","1","1","75","75","PRO","CB","C","13","30.360",".",".","1",".",".",".",".","75","PRO","CB",".","15060","1"],["624",".","1","1","75","75","PRO","CG","C","13","27.970",".",".","1",".",".",".",".","75","PRO","CG",".","15060","1"],["625",".","1","1","75","75","PRO","CD","C","13","49.760",".",".","1",".",".",".",".","75","PRO","CD",".","15060","1"],["626",".","1","1","76","76","LEU","H","H","1","7.241",".",".","1",".",".",".",".","76","LEU","HN",".","15060","1"],["627",".","1","1","76","76","LEU","HA","H","1","4.050",".",".","1",".",".",".",".","76","LEU","HA",".","15060","1"],["628",".","1","1","76","76","LEU","HB2","H","1","1.310",".",".","2",".",".",".",".","76","LEU","HB1",".","15060","1"],["629",".","1","1","76","76","LEU","HB3","H","1","2.060",".",".","2",".",".",".",".","76","LEU","HB2",".","15060","1"],["630",".","1","1","76","76","LEU","HD11","H","1","0.010",".",".","2",".",".",".",".","76","LEU","HD1",".","15060","1"],["631",".","1","1","76","76","LEU","HD12","H","1","0.010",".",".","2",".",".",".",".","76","LEU","HD1",".","15060","1"],["632",".","1","1","76","76","LEU","HD13","H","1","0.010",".",".","2",".",".",".",".","76","LEU","HD1",".","15060","1"],["633",".","1","1","76","76","LEU","HD21","H","1","0.210",".",".","2",".",".",".",".","76","LEU","HD2",".","15060","1"],["634",".","1","1","76","76","LEU","HD22","H","1","0.210",".",".","2",".",".",".",".","76","LEU","HD2",".","15060","1"],["635",".","1","1","76","76","LEU","HD23","H","1","0.210",".",".","2",".",".",".",".","76","LEU","HD2",".","15060","1"],["636",".","1","1","76","76","LEU","C","C","13","178.120",".",".","1",".",".",".",".","76","LEU","C",".","15060","1"],["637",".","1","1","76","76","LEU","CA","C","13","58.623",".",".","1",".",".",".",".","76","LEU","CA",".","15060","1"],["638",".","1","1","76","76","LEU","CB","C","13","41.900",".",".","1",".",".",".",".","76","LEU","CB",".","15060","1"],["639",".","1","1","76","76","LEU","CD1","C","13","24.440",".",".","1",".",".",".",".","76","LEU","CD1",".","15060","1"],["640",".","1","1","76","76","LEU","CD2","C","13","22.540",".",".","1",".",".",".",".","76","LEU","CD2",".","15060","1"],["641",".","1","1","76","76","LEU","N","N","15","119.170",".",".","1",".",".",".",".","76","LEU","N",".","15060","1"],["642",".","1","1","77","77","CYS","H","H","1","8.273",".",".","1",".",".",".",".","77","CYS","HN",".","15060","1"],["643",".","1","1","77","77","CYS","HA","H","1","4.300",".",".","1",".",".",".",".","77","CYS","HA",".","15060","1"],["644",".","1","1","77","77","CYS","HB3","H","1","1.640",".",".","2",".",".",".",".","77","CYS","HB2",".","15060","1"],["645",".","1","1","77","77","CYS","CA","C","13","65.007",".",".","1",".",".",".",".","77","CYS","CA",".","15060","1"],["646",".","1","1","77","77","CYS","CB","C","13","26.122",".",".","1",".",".",".",".","77","CYS","CB",".","15060","1"],["647",".","1","1","77","77","CYS","N","N","15","116.751",".",".","1",".",".",".",".","77","CYS","N",".","15060","1"],["648",".","1","1","78","78","ARG","H","H","1","8.060",".",".","1",".",".",".",".","78","ARG","HN",".","15060","1"],["649",".","1","1","78","78","ARG","HA","H","1","4.020",".",".","1",".",".",".",".","78","ARG","HA",".","15060","1"],["650",".","1","1","78","78","ARG","HB2","H","1","1.450",".",".","1",".",".",".",".","78","ARG","HB1",".","15060","1"],["651",".","1","1","78","78","ARG","HB3","H","1","1.450",".",".","1",".",".",".",".","78","ARG","HB2",".","15060","1"],["652",".","1","1","78","78","ARG","HG2","H","1","1.690",".",".","1",".",".",".",".","78","ARG","HG1",".","15060","1"],["653",".","1","1","78","78","ARG","HG3","H","1","1.690",".",".","1",".",".",".",".","78","ARG","HG2",".","15060","1"],["654",".","1","1","78","78","ARG","HD2","H","1","3.040",".",".","1",".",".",".",".","78","ARG","HD1",".","15060","1"],["655",".","1","1","78","78","ARG","HD3","H","1","3.040",".",".","1",".",".",".",".","78","ARG","HD2",".","15060","1"],["656",".","1","1","78","78","ARG","C","C","13","178.730",".",".","1",".",".",".",".","78","ARG","C",".","15060","1"],["657",".","1","1","78","78","ARG","CA","C","13","59.839",".",".","1",".",".",".",".","78","ARG","CA",".","15060","1"],["658",".","1","1","78","78","ARG","CB","C","13","29.900",".",".","1",".",".",".",".","78","ARG","CB",".","15060","1"],["659",".","1","1","78","78","ARG","CG","C","13","27.200",".",".","1",".",".",".",".","78","ARG","CG",".","15060","1"],["660",".","1","1","78","78","ARG","CD","C","13","43.540",".",".","1",".",".",".",".","78","ARG","CD",".","15060","1"],["661",".","1","1","78","78","ARG","N","N","15","120.251",".",".","1",".",".",".",".","78","ARG","N",".","15060","1"],["662",".","1","1","79","79","ARG","H","H","1","7.328",".",".","1",".",".",".",".","79","ARG","HN",".","15060","1"],["663",".","1","1","79","79","ARG","HA","H","1","4.300",".",".","1",".",".",".",".","79","ARG","HA",".","15060","1"],["664",".","1","1","79","79","ARG","HB2","H","1","1.590",".",".","1",".",".",".",".","79","ARG","HB1",".","15060","1"],["665",".","1","1","79","79","ARG","HB3","H","1","1.590",".",".","1",".",".",".",".","79","ARG","HB2",".","15060","1"],["666",".","1","1","79","79","ARG","HD3","H","1","2.580",".",".","2",".",".",".",".","79","ARG","HD2",".","15060","1"],["667",".","1","1","79","79","ARG","CA","C","13","60.025",".",".","1",".",".",".",".","79","ARG","CA",".","15060","1"],["668",".","1","1","79","79","ARG","CB","C","13","29.720",".",".","1",".",".",".",".","79","ARG","CB",".","15060","1"],["669",".","1","1","79","79","ARG","CD","C","13","42.710",".",".","1",".",".",".",".","79","ARG","CD",".","15060","1"],["670",".","1","1","79","79","ARG","N","N","15","120.135",".",".","1",".",".",".",".","79","ARG","N",".","15060","1"],["671",".","1","1","80","80","LEU","H","H","1","8.160",".",".","1",".",".",".",".","80","LEU","HN",".","15060","1"],["672",".","1","1","80","80","LEU","HA","H","1","4.080",".",".","1",".",".",".",".","80","LEU","HA",".","15060","1"],["673",".","1","1","80","80","LEU","HB2","H","1","1.810",".",".","2",".",".",".",".","80","LEU","HB1",".","15060","1"],["674",".","1","1","80","80","LEU","HB3","H","1","1.210",".",".","2",".",".",".",".","80","LEU","HB2",".","15060","1"],["675",".","1","1","80","80","LEU","HD11","H","1","0.430",".",".","2",".",".",".",".","80","LEU","HD1",".","15060","1"],["676",".","1","1","80","80","LEU","HD12","H","1","0.430",".",".","2",".",".",".",".","80","LEU","HD1",".","15060","1"],["677",".","1","1","80","80","LEU","HD13","H","1","0.430",".",".","2",".",".",".",".","80","LEU","HD1",".","15060","1"],["678",".","1","1","80","80","LEU","HD21","H","1","0.740",".",".","2",".",".",".",".","80","LEU","HD2",".","15060","1"],["679",".","1","1","80","80","LEU","HD22","H","1","0.740",".",".","2",".",".",".",".","80","LEU","HD2",".","15060","1"],["680",".","1","1","80","80","LEU","HD23","H","1","0.740",".",".","2",".",".",".",".","80","LEU","HD2",".","15060","1"],["681",".","1","1","80","80","LEU","C","C","13","178.465",".",".","1",".",".",".",".","80","LEU","C",".","15060","1"],["682",".","1","1","80","80","LEU","CA","C","13","58.042",".",".","1",".",".",".",".","80","LEU","CA",".","15060","1"],["683",".","1","1","80","80","LEU","CB","C","13","40.900",".",".","1",".",".",".",".","80","LEU","CB",".","15060","1"],["684",".","1","1","80","80","LEU","CD1","C","13","26.210",".",".","1",".",".",".",".","80","LEU","CD1",".","15060","1"],["685",".","1","1","80","80","LEU","CD2","C","13","22.470",".",".","1",".",".",".",".","80","LEU","CD2",".","15060","1"],["686",".","1","1","80","80","LEU","N","N","15","117.390",".",".","1",".",".",".",".","80","LEU","N",".","15060","1"],["687",".","1","1","81","81","ASN","H","H","1","8.517",".",".","1",".",".",".",".","81","ASN","HN",".","15060","1"],["688",".","1","1","81","81","ASN","HA","H","1","4.440",".",".","1",".",".",".",".","81","ASN","HA",".","15060","1"],["689",".","1","1","81","81","ASN","HB2","H","1","2.870",".",".","2",".",".",".",".","81","ASN","HB1",".","15060","1"],["690",".","1","1","81","81","ASN","HB3","H","1","2.820",".",".","2",".",".",".",".","81","ASN","HB2",".","15060","1"],["691",".","1","1","81","81","ASN","HD21","H","1","7.566",".",".","2",".",".",".",".","81","ASN","HD21",".","15060","1"],["692",".","1","1","81","81","ASN","HD22","H","1","6.954",".",".","2",".",".",".",".","81","ASN","HD22",".","15060","1"],["693",".","1","1","81","81","ASN","C","C","13","178.232",".",".","1",".",".",".",".","81","ASN","C",".","15060","1"],["694",".","1","1","81","81","ASN","CA","C","13","57.031",".",".","1",".",".",".",".","81","ASN","CA",".","15060","1"],["695",".","1","1","81","81","ASN","CB","C","13","38.549",".",".","1",".",".",".",".","81","ASN","CB",".","15060","1"],["696",".","1","1","81","81","ASN","N","N","15","118.647",".",".","1",".",".",".",".","81","ASN","N",".","15060","1"],["697",".","1","1","81","81","ASN","ND2","N","15","114.200",".",".","1",".",".",".",".","81","ASN","ND2",".","15060","1"],["698",".","1","1","82","82","THR","H","H","1","8.036",".",".","1",".",".",".",".","82","THR","HN",".","15060","1"],["699",".","1","1","82","82","THR","HA","H","1","3.870",".",".","1",".",".",".",".","82","THR","HA",".","15060","1"],["700",".","1","1","82","82","THR","HB","H","1","4.310",".",".","1",".",".",".",".","82","THR","HB",".","15060","1"],["701",".","1","1","82","82","THR","HG21","H","1","1.080",".",".","1",".",".",".",".","82","THR","HG2",".","15060","1"],["702",".","1","1","82","82","THR","HG22","H","1","1.080",".",".","1",".",".",".",".","82","THR","HG2",".","15060","1"],["703",".","1","1","82","82","THR","HG23","H","1","1.080",".",".","1",".",".",".",".","82","THR","HG2",".","15060","1"],["704",".","1","1","82","82","THR","CA","C","13","67.400",".",".","1",".",".",".",".","82","THR","CA",".","15060","1"],["705",".","1","1","82","82","THR","CB","C","13","68.681",".",".","1",".",".",".",".","82","THR","CB",".","15060","1"],["706",".","1","1","82","82","THR","CG2","C","13","22.060",".",".","1",".",".",".",".","82","THR","CG2",".","15060","1"],["707",".","1","1","82","82","THR","N","N","15","119.380",".",".","1",".",".",".",".","82","THR","N",".","15060","1"],["708",".","1","1","83","83","LEU","H","H","1","7.897",".",".","1",".",".",".",".","83","LEU","HN",".","15060","1"],["709",".","1","1","83","83","LEU","HA","H","1","3.670",".",".","1",".",".",".",".","83","LEU","HA",".","15060","1"],["710",".","1","1","83","83","LEU","HB2","H","1","1.780",".",".","2",".",".",".",".","83","LEU","HB1",".","15060","1"],["711",".","1","1","83","83","LEU","HB3","H","1","0.710",".",".","2",".",".",".",".","83","LEU","HB2",".","15060","1"],["712",".","1","1","83","83","LEU","HG","H","1","1.500",".",".","1",".",".",".",".","83","LEU","HG",".","15060","1"],["713",".","1","1","83","83","LEU","HD11","H","1","-0.180",".",".","2",".",".",".",".","83","LEU","HD1",".","15060","1"],["714",".","1","1","83","83","LEU","HD12","H","1","-0.180",".",".","2",".",".",".",".","83","LEU","HD1",".","15060","1"],["715",".","1","1","83","83","LEU","HD13","H","1","-0.180",".",".","2",".",".",".",".","83","LEU","HD1",".","15060","1"],["716",".","1","1","83","83","LEU","HD21","H","1","0.300",".",".","2",".",".",".",".","83","LEU","HD2",".","15060","1"],["717",".","1","1","83","83","LEU","HD22","H","1","0.300",".",".","2",".",".",".",".","83","LEU","HD2",".","15060","1"],["718",".","1","1","83","83","LEU","HD23","H","1","0.300",".",".","2",".",".",".",".","83","LEU","HD2",".","15060","1"],["719",".","1","1","83","83","LEU","C","C","13","178.898",".",".","1",".",".",".",".","83","LEU","C",".","15060","1"],["720",".","1","1","83","83","LEU","CA","C","13","57.760",".",".","1",".",".",".",".","83","LEU","CA",".","15060","1"],["721",".","1","1","83","83","LEU","CB","C","13","41.090",".",".","1",".",".",".",".","83","LEU","CB",".","15060","1"],["722",".","1","1","83","83","LEU","CG","C","13","25.430",".",".","1",".",".",".",".","83","LEU","CG",".","15060","1"],["723",".","1","1","83","83","LEU","CD1","C","13","20.740",".",".","1",".",".",".",".","83","LEU","CD1",".","15060","1"],["724",".","1","1","83","83","LEU","CD2","C","13","26.075",".",".","1",".",".",".",".","83","LEU","CD2",".","15060","1"],["725",".","1","1","83","83","LEU","N","N","15","121.629",".",".","1",".",".",".",".","83","LEU","N",".","15060","1"],["726",".","1","1","84","84","ASN","H","H","1","8.967",".",".","1",".",".",".",".","84","ASN","HN",".","15060","1"],["727",".","1","1","84","84","ASN","HA","H","1","4.740",".",".","1",".",".",".",".","84","ASN","HA",".","15060","1"],["728",".","1","1","84","84","ASN","HB2","H","1","3.330",".",".","2",".",".",".",".","84","ASN","HB1",".","15060","1"],["729",".","1","1","84","84","ASN","HB3","H","1","3.020",".",".","2",".",".",".",".","84","ASN","HB2",".","15060","1"],["730",".","1","1","84","84","ASN","HD21","H","1","7.232",".",".","2",".",".",".",".","84","ASN","HD21",".","15060","1"],["731",".","1","1","84","84","ASN","HD22","H","1","7.739",".",".","2",".",".",".",".","84","ASN","HD22",".","15060","1"],["732",".","1","1","84","84","ASN","C","C","13","178.751",".",".","1",".",".",".",".","84","ASN","C",".","15060","1"],["733",".","1","1","84","84","ASN","CA","C","13","56.505",".",".","1",".",".",".",".","84","ASN","CA",".","15060","1"],["734",".","1","1","84","84","ASN","CB","C","13","36.883",".",".","1",".",".",".",".","84","ASN","CB",".","15060","1"],["735",".","1","1","84","84","ASN","N","N","15","121.031",".",".","1",".",".",".",".","84","ASN","N",".","15060","1"],["736",".","1","1","84","84","ASN","ND2","N","15","105.352",".",".","1",".",".",".",".","84","ASN","ND2",".","15060","1"],["737",".","1","1","85","85","LYS","H","H","1","8.096",".",".","1",".",".",".",".","85","LYS","HN",".","15060","1"],["738",".","1","1","85","85","LYS","HA","H","1","4.120",".",".","1",".",".",".",".","85","LYS","HA",".","15060","1"],["739",".","1","1","85","85","LYS","HB2","H","1","2.030",".",".","2",".",".",".",".","85","LYS","HB1",".","15060","1"],["740",".","1","1","85","85","LYS","HB3","H","1","2.110",".",".","2",".",".",".",".","85","LYS","HB2",".","15060","1"],["741",".","1","1","85","85","LYS","HG2","H","1","1.700",".",".","1",".",".",".",".","85","LYS","HG1",".","15060","1"],["742",".","1","1","85","85","LYS","HG3","H","1","1.700",".",".","1",".",".",".",".","85","LYS","HG2",".","15060","1"],["743",".","1","1","85","85","LYS","HD2","H","1","1.410",".",".","1",".",".",".",".","85","LYS","HD1",".","15060","1"],["744",".","1","1","85","85","LYS","HD3","H","1","1.410",".",".","1",".",".",".",".","85","LYS","HD2",".","15060","1"],["745",".","1","1","85","85","LYS","HE2","H","1","2.970",".",".","1",".",".",".",".","85","LYS","HE1",".","15060","1"],["746",".","1","1","85","85","LYS","HE3","H","1","2.970",".",".","1",".",".",".",".","85","LYS","HE2",".","15060","1"],["747",".","1","1","85","85","LYS","C","C","13","179.722",".",".","1",".",".",".",".","85","LYS","C",".","15060","1"],["748",".","1","1","85","85","LYS","CA","C","13","59.816",".",".","1",".",".",".",".","85","LYS","CA",".","15060","1"],["749",".","1","1","85","85","LYS","CB","C","13","31.500",".",".","1",".",".",".",".","85","LYS","CB",".","15060","1"],["750",".","1","1","85","85","LYS","CG","C","13","29.160",".",".","1",".",".",".",".","85","LYS","CG",".","15060","1"],["751",".","1","1","85","85","LYS","CD","C","13","24.960",".",".","1",".",".",".",".","85","LYS","CD",".","15060","1"],["752",".","1","1","85","85","LYS","CE","C","13","41.770",".",".","1",".",".",".",".","85","LYS","CE",".","15060","1"],["753",".","1","1","85","85","LYS","N","N","15","122.287",".",".","1",".",".",".",".","85","LYS","N",".","15060","1"],["754",".","1","1","86","86","CYS","H","H","1","8.435",".",".","1",".",".",".",".","86","CYS","HN",".","15060","1"],["755",".","1","1","86","86","CYS","HA","H","1","4.130",".",".","1",".",".",".",".","86","CYS","HA",".","15060","1"],["756",".","1","1","86","86","CYS","HB2","H","1","3.110",".",".","1",".",".",".",".","86","CYS","HB1",".","15060","1"],["757",".","1","1","86","86","CYS","HB3","H","1","3.110",".",".","1",".",".",".",".","86","CYS","HB2",".","15060","1"],["758",".","1","1","86","86","CYS","C","C","13","177.189",".",".","1",".",".",".",".","86","CYS","C",".","15060","1"],["759",".","1","1","86","86","CYS","CA","C","13","63.919",".",".","1",".",".",".",".","86","CYS","CA",".","15060","1"],["760",".","1","1","86","86","CYS","CB","C","13","26.830",".",".","1",".",".",".",".","86","CYS","CB",".","15060","1"],["761",".","1","1","86","86","CYS","N","N","15","118.712",".",".","1",".",".",".",".","86","CYS","N",".","15060","1"],["762",".","1","1","87","87","ALA","H","H","1","8.744",".",".","1",".",".",".",".","87","ALA","HN",".","15060","1"],["763",".","1","1","87","87","ALA","HA","H","1","4.310",".",".","1",".",".",".",".","87","ALA","HA",".","15060","1"],["764",".","1","1","87","87","ALA","HB1","H","1","1.550",".",".","1",".",".",".",".","87","ALA","HB",".","15060","1"],["765",".","1","1","87","87","ALA","HB2","H","1","1.550",".",".","1",".",".",".",".","87","ALA","HB",".","15060","1"],["766",".","1","1","87","87","ALA","HB3","H","1","1.550",".",".","1",".",".",".",".","87","ALA","HB",".","15060","1"],["767",".","1","1","87","87","ALA","C","C","13","179.569",".",".","1",".",".",".",".","87","ALA","C",".","15060","1"],["768",".","1","1","87","87","ALA","CA","C","13","54.539",".",".","1",".",".",".",".","87","ALA","CA",".","15060","1"],["769",".","1","1","87","87","ALA","CB","C","13","19.350",".",".","1",".",".",".",".","87","ALA","CB",".","15060","1"],["770",".","1","1","87","87","ALA","N","N","15","121.138",".",".","1",".",".",".",".","87","ALA","N",".","15060","1"],["771",".","1","1","88","88","SER","H","H","1","8.087",".",".","1",".",".",".",".","88","SER","HN",".","15060","1"],["772",".","1","1","88","88","SER","HA","H","1","4.330",".",".","1",".",".",".",".","88","SER","HA",".","15060","1"],["773",".","1","1","88","88","SER","HB2","H","1","4.010",".",".","1",".",".",".",".","88","SER","HB1",".","15060","1"],["774",".","1","1","88","88","SER","HB3","H","1","4.010",".",".","1",".",".",".",".","88","SER","HB2",".","15060","1"],["775",".","1","1","88","88","SER","C","C","13","175.354",".",".","1",".",".",".",".","88","SER","C",".","15060","1"],["776",".","1","1","88","88","SER","CA","C","13","60.860",".",".","1",".",".",".",".","88","SER","CA",".","15060","1"],["777",".","1","1","88","88","SER","CB","C","13","63.560",".",".","1",".",".",".",".","88","SER","CB",".","15060","1"],["778",".","1","1","88","88","SER","N","N","15","113.499",".",".","1",".",".",".",".","88","SER","N",".","15060","1"],["779",".","1","1","89","89","MET","H","H","1","7.782",".",".","1",".",".",".",".","89","MET","HN",".","15060","1"],["780",".","1","1","89","89","MET","HA","H","1","4.310",".",".","1",".",".",".",".","89","MET","HA",".","15060","1"],["781",".","1","1","89","89","MET","HB2","H","1","2.570",".",".","2",".",".",".",".","89","MET","HB1",".","15060","1"],["782",".","1","1","89","89","MET","HB3","H","1","2.730",".",".","2",".",".",".",".","89","MET","HB2",".","15060","1"],["783",".","1","1","89","89","MET","HG2","H","1","1.640",".",".","2",".",".",".",".","89","MET","HG1",".","15060","1"],["784",".","1","1","89","89","MET","HG3","H","1","1.560",".",".","2",".",".",".",".","89","MET","HG2",".","15060","1"],["785",".","1","1","89","89","MET","HE1","H","1","2.070",".",".","1",".",".",".",".","89","MET","HE",".","15060","1"],["786",".","1","1","89","89","MET","HE2","H","1","2.070",".",".","1",".",".",".",".","89","MET","HE",".","15060","1"],["787",".","1","1","89","89","MET","HE3","H","1","2.070",".",".","1",".",".",".",".","89","MET","HE",".","15060","1"],["788",".","1","1","89","89","MET","CA","C","13","56.942",".",".","1",".",".",".",".","89","MET","CA",".","15060","1"],["789",".","1","1","89","89","MET","CB","C","13","32.020",".",".","1",".",".",".",".","89","MET","CB",".","15060","1"],["790",".","1","1","89","89","MET","CE","C","13","17.020",".",".","1",".",".",".",".","89","MET","CE",".","15060","1"],["791",".","1","1","89","89","MET","N","N","15","120.541",".",".","1",".",".",".",".","89","MET","N",".","15060","1"],["792",".","1","1","90","90","ARG","H","H","1","7.793",".",".","1",".",".",".",".","90","ARG","HN",".","15060","1"],["793",".","1","1","90","90","ARG","HA","H","1","4.250",".",".","1",".",".",".",".","90","ARG","HA",".","15060","1"],["794",".","1","1","90","90","ARG","HB2","H","1","1.880",".",".","1",".",".",".",".","90","ARG","HB1",".","15060","1"],["795",".","1","1","90","90","ARG","HB3","H","1","1.880",".",".","1",".",".",".",".","90","ARG","HB2",".","15060","1"],["796",".","1","1","90","90","ARG","HG2","H","1","1.670",".",".","1",".",".",".",".","90","ARG","HG1",".","15060","1"],["797",".","1","1","90","90","ARG","HG3","H","1","1.670",".",".","1",".",".",".",".","90","ARG","HG2",".","15060","1"],["798",".","1","1","90","90","ARG","HD2","H","1","3.180",".",".","1",".",".",".",".","90","ARG","HD1",".","15060","1"],["799",".","1","1","90","90","ARG","HD3","H","1","3.180",".",".","1",".",".",".",".","90","ARG","HD2",".","15060","1"],["800",".","1","1","90","90","ARG","C","C","13","176.503",".",".","1",".",".",".",".","90","ARG","C",".","15060","1"],["801",".","1","1","90","90","ARG","CA","C","13","56.710",".",".","1",".",".",".",".","90","ARG","CA",".","15060","1"],["802",".","1","1","90","90","ARG","CB","C","13","30.250",".",".","1",".",".",".",".","90","ARG","CB",".","15060","1"],["803",".","1","1","90","90","ARG","CG","C","13","27.030",".",".","1",".",".",".",".","90","ARG","CG",".","15060","1"],["804",".","1","1","90","90","ARG","CD","C","13","43.540",".",".","1",".",".",".",".","90","ARG","CD",".","15060","1"],["805",".","1","1","90","90","ARG","N","N","15","118.950",".",".","1",".",".",".",".","90","ARG","N",".","15060","1"],["806",".","1","1","91","91","LEU","H","H","1","7.936",".",".","1",".",".",".",".","91","LEU","HN",".","15060","1"],["807",".","1","1","91","91","LEU","HA","H","1","4.350",".",".","1",".",".",".",".","91","LEU","HA",".","15060","1"],["808",".","1","1","91","91","LEU","HB2","H","1","1.700",".",".","2",".",".",".",".","91","LEU","HB1",".","15060","1"],["809",".","1","1","91","91","LEU","HB3","H","1","1.600",".",".","2",".",".",".",".","91","LEU","HB2",".","15060","1"],["810",".","1","1","91","91","LEU","HG","H","1","1.340",".",".","1",".",".",".",".","91","LEU","HG",".","15060","1"],["811",".","1","1","91","91","LEU","HD11","H","1","0.890",".",".","2",".",".",".",".","91","LEU","HD1",".","15060","1"],["812",".","1","1","91","91","LEU","HD12","H","1","0.890",".",".","2",".",".",".",".","91","LEU","HD1",".","15060","1"],["813",".","1","1","91","91","LEU","HD13","H","1","0.890",".",".","2",".",".",".",".","91","LEU","HD1",".","15060","1"],["814",".","1","1","91","91","LEU","HD21","H","1","0.960",".",".","2",".",".",".",".","91","LEU","HD2",".","15060","1"],["815",".","1","1","91","91","LEU","HD22","H","1","0.960",".",".","2",".",".",".",".","91","LEU","HD2",".","15060","1"],["816",".","1","1","91","91","LEU","HD23","H","1","0.960",".",".","2",".",".",".",".","91","LEU","HD2",".","15060","1"],["817",".","1","1","91","91","LEU","CA","C","13","55.314",".",".","1",".",".",".",".","91","LEU","CA",".","15060","1"],["818",".","1","1","91","91","LEU","CB","C","13","42.427",".",".","1",".",".",".",".","91","LEU","CB",".","15060","1"],["819",".","1","1","91","91","LEU","CG","C","13","26.930",".",".","1",".",".",".",".","91","LEU","CG",".","15060","1"],["820",".","1","1","91","91","LEU","CD1","C","13","23.320",".",".","1",".",".",".",".","91","LEU","CD1",".","15060","1"],["821",".","1","1","91","91","LEU","CD2","C","13","25.531",".",".","1",".",".",".",".","91","LEU","CD2",".","15060","1"],["822",".","1","1","91","91","LEU","N","N","15","121.017",".",".","1",".",".",".",".","91","LEU","N",".","15060","1"],["823",".","1","1","92","92","ASP","H","H","1","8.269",".",".","1",".",".",".",".","92","ASP","HN",".","15060","1"],["824",".","1","1","92","92","ASP","HA","H","1","4.620",".",".","1",".",".",".",".","92","ASP","HA",".","15060","1"],["825",".","1","1","92","92","ASP","HB3","H","1","2.730",".",".","2",".",".",".",".","92","ASP","HB2",".","15060","1"],["826",".","1","1","92","92","ASP","C","C","13","176.812",".",".","1",".",".",".",".","92","ASP","C",".","15060","1"],["827",".","1","1","92","92","ASP","CA","C","13","54.606",".",".","1",".",".",".",".","92","ASP","CA",".","15060","1"],["828",".","1","1","92","92","ASP","CB","C","13","41.257",".",".","1",".",".",".",".","92","ASP","CB",".","15060","1"],["829",".","1","1","92","92","ASP","N","N","15","120.647",".",".","1",".",".",".",".","92","ASP","N",".","15060","1"],["830",".","1","1","93","93","VAL","H","H","1","8.033",".",".","1",".",".",".",".","93","VAL","HN",".","15060","1"],["831",".","1","1","93","93","VAL","HA","H","1","4.050",".",".","1",".",".",".",".","93","VAL","HA",".","15060","1"],["832",".","1","1","93","93","VAL","HB","H","1","2.130",".",".","1",".",".",".",".","93","VAL","HB",".","15060","1"],["833",".","1","1","93","93","VAL","HG11","H","1","0.910",".",".","2",".",".",".",".","93","VAL","HG1",".","15060","1"],["834",".","1","1","93","93","VAL","HG12","H","1","0.910",".",".","2",".",".",".",".","93","VAL","HG1",".","15060","1"],["835",".","1","1","93","93","VAL","HG13","H","1","0.910",".",".","2",".",".",".",".","93","VAL","HG1",".","15060","1"],["836",".","1","1","93","93","VAL","HG21","H","1","0.970",".",".","2",".",".",".",".","93","VAL","HG2",".","15060","1"],["837",".","1","1","93","93","VAL","HG22","H","1","0.970",".",".","2",".",".",".",".","93","VAL","HG2",".","15060","1"],["838",".","1","1","93","93","VAL","HG23","H","1","0.970",".",".","2",".",".",".",".","93","VAL","HG2",".","15060","1"],["839",".","1","1","93","93","VAL","C","C","13","176.146",".",".","1",".",".",".",".","93","VAL","C",".","15060","1"],["840",".","1","1","93","93","VAL","CA","C","13","63.140",".",".","1",".",".",".",".","93","VAL","CA",".","15060","1"],["841",".","1","1","93","93","VAL","CB","C","13","32.010",".",".","1",".",".",".",".","93","VAL","CB",".","15060","1"],["842",".","1","1","93","93","VAL","CG1","C","13","20.700",".",".","1",".",".",".",".","93","VAL","CG1",".","15060","1"],["843",".","1","1","93","93","VAL","CG2","C","13","21.180",".",".","1",".",".",".",".","93","VAL","CG2",".","15060","1"],["844",".","1","1","93","93","VAL","N","N","15","119.731",".",".","1",".",".",".",".","93","VAL","N",".","15060","1"],["845",".","1","1","94","94","ASN","H","H","1","8.376",".",".","1",".",".",".",".","94","ASN","HN",".","15060","1"],["846",".","1","1","94","94","ASN","HA","H","1","4.690",".",".","1",".",".",".",".","94","ASN","HA",".","15060","1"],["847",".","1","1","94","94","ASN","HB2","H","1","2.740",".",".","1",".",".",".",".","94","ASN","HB1",".","15060","1"],["848",".","1","1","94","94","ASN","HB3","H","1","2.740",".",".","1",".",".",".",".","94","ASN","HB2",".","15060","1"],["849",".","1","1","94","94","ASN","HD21","H","1","7.684",".",".","2",".",".",".",".","94","ASN","HD21",".","15060","1"],["850",".","1","1","94","94","ASN","HD22","H","1","6.944",".",".","2",".",".",".",".","94","ASN","HD22",".","15060","1"],["851",".","1","1","94","94","ASN","C","C","13","175.222",".",".","1",".",".",".",".","94","ASN","C",".","15060","1"],["852",".","1","1","94","94","ASN","CA","C","13","53.605",".",".","1",".",".",".",".","94","ASN","CA",".","15060","1"],["853",".","1","1","94","94","ASN","CB","C","13","38.720",".",".","1",".",".",".",".","94","ASN","CB",".","15060","1"],["854",".","1","1","94","94","ASN","N","N","15","120.080",".",".","1",".",".",".",".","94","ASN","N",".","15060","1"],["855",".","1","1","94","94","ASN","ND2","N","15","113.553",".",".","1",".",".",".",".","94","ASN","ND2",".","15060","1"],["856",".","1","1","95","95","PHE","H","H","1","8.048",".",".","1",".",".",".",".","95","PHE","HN",".","15060","1"],["857",".","1","1","95","95","PHE","HA","H","1","4.502",".",".","1",".",".",".",".","95","PHE","HA",".","15060","1"],["858",".","1","1","95","95","PHE","HB2","H","1","3.130",".",".","1",".",".",".",".","95","PHE","HB1",".","15060","1"],["859",".","1","1","95","95","PHE","HB3","H","1","3.130",".",".","1",".",".",".",".","95","PHE","HB2",".","15060","1"],["860",".","1","1","95","95","PHE","HD1","H","1","7.261",".",".","3",".",".",".",".","95","PHE","HD1",".","15060","1"],["861",".","1","1","95","95","PHE","HE1","H","1","7.359",".",".","3",".",".",".",".","95","PHE","HE1",".","15060","1"],["862",".","1","1","95","95","PHE","HZ","H","1","7.309",".",".","1",".",".",".",".","95","PHE","HZ",".","15060","1"],["863",".","1","1","95","95","PHE","C","C","13","175.568",".",".","1",".",".",".",".","95","PHE","C",".","15060","1"],["864",".","1","1","95","95","PHE","CA","C","13","58.377",".",".","1",".",".",".",".","95","PHE","CA",".","15060","1"],["865",".","1","1","95","95","PHE","CB","C","13","39.288",".",".","1",".",".",".",".","95","PHE","CB",".","15060","1"],["866",".","1","1","95","95","PHE","N","N","15","120.616",".",".","1",".",".",".",".","95","PHE","N",".","15060","1"],["867",".","1","1","96","96","GLN","H","H","1","8.160",".",".","1",".",".",".",".","96","GLN","HN",".","15060","1"],["868",".","1","1","96","96","GLN","HA","H","1","4.240",".",".","1",".",".",".",".","96","GLN","HA",".","15060","1"],["869",".","1","1","96","96","GLN","HB2","H","1","2.018",".",".","2",".",".",".",".","96","GLN","HB1",".","15060","1"],["870",".","1","1","96","96","GLN","HB3","H","1","1.912",".",".","2",".",".",".",".","96","GLN","HB2",".","15060","1"],["871",".","1","1","96","96","GLN","HG2","H","1","2.280",".",".","1",".",".",".",".","96","GLN","HG1",".","15060","1"],["872",".","1","1","96","96","GLN","HG3","H","1","2.280",".",".","1",".",".",".",".","96","GLN","HG2",".","15060","1"],["873",".","1","1","96","96","GLN","HE21","H","1","7.519",".",".","2",".",".",".",".","96","GLN","HE21",".","15060","1"],["874",".","1","1","96","96","GLN","HE22","H","1","6.884",".",".","2",".",".",".",".","96","GLN","HE22",".","15060","1"],["875",".","1","1","96","96","GLN","C","C","13","175.470",".",".","1",".",".",".",".","96","GLN","C",".","15060","1"],["876",".","1","1","96","96","GLN","CA","C","13","55.770",".",".","1",".",".",".",".","96","GLN","CA",".","15060","1"],["877",".","1","1","96","96","GLN","CB","C","13","29.291",".",".","1",".",".",".",".","96","GLN","CB",".","15060","1"],["878",".","1","1","96","96","GLN","CG","C","13","35.570",".",".","1",".",".",".",".","96","GLN","CG",".","15060","1"],["879",".","1","1","96","96","GLN","N","N","15","121.289",".",".","1",".",".",".",".","96","GLN","N",".","15060","1"],["880",".","1","1","96","96","GLN","NE2","N","15","112.512",".",".","1",".",".",".",".","96","GLN","NE2",".","15060","1"],["881",".","1","1","97","97","ARG","H","H","1","8.204",".",".","1",".",".",".",".","97","ARG","HN",".","15060","1"],["882",".","1","1","97","97","ARG","HA","H","1","4.260",".",".","1",".",".",".",".","97","ARG","HA",".","15060","1"],["883",".","1","1","97","97","ARG","HB2","H","1","1.670",".",".","2",".",".",".",".","97","ARG","HB1",".","15060","1"],["884",".","1","1","97","97","ARG","HB3","H","1","1.810",".",".","2",".",".",".",".","97","ARG","HB2",".","15060","1"],["885",".","1","1","97","97","ARG","HG2","H","1","1.650",".",".","1",".",".",".",".","97","ARG","HG1",".","15060","1"],["886",".","1","1","97","97","ARG","HG3","H","1","1.650",".",".","1",".",".",".",".","97","ARG","HG2",".","15060","1"],["887",".","1","1","97","97","ARG","HD2","H","1","3.200",".",".","1",".",".",".",".","97","ARG","HD1",".","15060","1"],["888",".","1","1","97","97","ARG","HD3","H","1","3.200",".",".","1",".",".",".",".","97","ARG","HD2",".","15060","1"],["889",".","1","1","97","97","ARG","C","C","13","176.202",".",".","1",".",".",".",".","97","ARG","C",".","15060","1"],["890",".","1","1","97","97","ARG","CA","C","13","56.090",".",".","1",".",".",".",".","97","ARG","CA",".","15060","1"],["891",".","1","1","97","97","ARG","CB","C","13","30.770",".",".","1",".",".",".",".","97","ARG","CB",".","15060","1"],["892",".","1","1","97","97","ARG","CD","C","13","43.220",".",".","1",".",".",".",".","97","ARG","CD",".","15060","1"],["893",".","1","1","97","97","ARG","N","N","15","122.338",".",".","1",".",".",".",".","97","ARG","N",".","15060","1"],["894",".","1","1","98","98","LYS","H","H","1","8.441",".",".","1",".",".",".",".","98","LYS","HN",".","15060","1"],["895",".","1","1","98","98","LYS","HA","H","1","4.300",".",".","1",".",".",".",".","98","LYS","HA",".","15060","1"],["896",".","1","1","98","98","LYS","HB2","H","1","1.750",".",".","2",".",".",".",".","98","LYS","HB1",".","15060","1"],["897",".","1","1","98","98","LYS","HB3","H","1","1.810",".",".","2",".",".",".",".","98","LYS","HB2",".","15060","1"],["898",".","1","1","98","98","LYS","HG2","H","1","1.680",".",".","1",".",".",".",".","98","LYS","HG1",".","15060","1"],["899",".","1","1","98","98","LYS","HG3","H","1","1.680",".",".","1",".",".",".",".","98","LYS","HG2",".","15060","1"],["900",".","1","1","98","98","LYS","HD2","H","1","1.420",".",".","1",".",".",".",".","98","LYS","HD1",".","15060","1"],["901",".","1","1","98","98","LYS","HD3","H","1","1.420",".",".","1",".",".",".",".","98","LYS","HD2",".","15060","1"],["902",".","1","1","98","98","LYS","HE2","H","1","2.980",".",".","1",".",".",".",".","98","LYS","HE1",".","15060","1"],["903",".","1","1","98","98","LYS","HE3","H","1","2.980",".",".","1",".",".",".",".","98","LYS","HE2",".","15060","1"],["904",".","1","1","98","98","LYS","C","C","13","176.486",".",".","1",".",".",".",".","98","LYS","C",".","15060","1"],["905",".","1","1","98","98","LYS","CA","C","13","55.980",".",".","1",".",".",".",".","98","LYS","CA",".","15060","1"],["906",".","1","1","98","98","LYS","CB","C","13","33.050",".",".","1",".",".",".",".","98","LYS","CB",".","15060","1"],["907",".","1","1","98","98","LYS","CG","C","13","29.000",".",".","1",".",".",".",".","98","LYS","CG",".","15060","1"],["908",".","1","1","98","98","LYS","CD","C","13","24.760",".",".","1",".",".",".",".","98","LYS","CD",".","15060","1"],["909",".","1","1","98","98","LYS","CE","C","13","42.080",".",".","1",".",".",".",".","98","LYS","CE",".","15060","1"],["910",".","1","1","98","98","LYS","N","N","15","123.396",".",".","1",".",".",".",".","98","LYS","N",".","15060","1"],["911",".","1","1","99","99","LYS","H","H","1","8.522",".",".","1",".",".",".",".","99","LYS","HN",".","15060","1"],["912",".","1","1","99","99","LYS","CA","C","13","56.547",".",".","1",".",".",".",".","99","LYS","CA",".","15060","1"],["913",".","1","1","99","99","LYS","CB","C","13","33.003",".",".","1",".",".",".",".","99","LYS","CB",".","15060","1"],["914",".","1","1","99","99","LYS","N","N","15","123.539",".",".","1",".",".",".",".","99","LYS","N",".","15060","1"],["915",".","1","1","100","100","GLY","HA2","H","1","3.960",".",".","2",".",".",".",".","100","GLY","HA1",".","15060","1"],["916",".","1","1","100","100","GLY","HA3","H","1","4.000",".",".","2",".",".",".",".","100","GLY","HA2",".","15060","1"],["917",".","1","1","100","100","GLY","C","C","13","173.922",".",".","1",".",".",".",".","100","GLY","C",".","15060","1"],["918",".","1","1","100","100","GLY","CA","C","13","45.190",".",".","1",".",".",".",".","100","GLY","CA",".","15060","1"],["919",".","1","1","101","101","ASP","H","H","1","8.269",".",".","1",".",".",".",".","101","ASP","HN",".","15060","1"],["920",".","1","1","101","101","ASP","HA","H","1","4.630",".",".","1",".",".",".",".","101","ASP","HA",".","15060","1"],["921",".","1","1","101","101","ASP","HB2","H","1","2.660",".",".","2",".",".",".",".","101","ASP","HB1",".","15060","1"],["922",".","1","1","101","101","ASP","HB3","H","1","2.740",".",".","2",".",".",".",".","101","ASP","HB2",".","15060","1"],["923",".","1","1","101","101","ASP","CA","C","13","54.487",".",".","1",".",".",".",".","101","ASP","CA",".","15060","1"],["924",".","1","1","101","101","ASP","CB","C","13","41.259",".",".","1",".",".",".",".","101","ASP","CB",".","15060","1"],["925",".","1","1","101","101","ASP","N","N","15","120.647",".",".","1",".",".",".",".","101","ASP","N",".","15060","1"],["926",".","1","1","102","102","ASP","H","H","1","8.376",".",".","1",".",".",".",".","102","ASP","HN",".","15060","1"],["927",".","1","1","102","102","ASP","HA","H","1","4.609",".",".","1",".",".",".",".","102","ASP","HA",".","15060","1"],["928",".","1","1","102","102","ASP","HB2","H","1","2.666",".",".","2",".",".",".",".","102","ASP","HB1",".","15060","1"],["929",".","1","1","102","102","ASP","HB3","H","1","2.670",".",".","2",".",".",".",".","102","ASP","HB2",".","15060","1"],["930",".","1","1","102","102","ASP","C","C","13","176.282",".",".","1",".",".",".",".","102","ASP","C",".","15060","1"],["931",".","1","1","102","102","ASP","CA","C","13","54.572",".",".","1",".",".",".",".","102","ASP","CA",".","15060","1"],["932",".","1","1","102","102","ASP","CB","C","13","41.040",".",".","1",".",".",".",".","102","ASP","CB",".","15060","1"],["933",".","1","1","102","102","ASP","N","N","15","120.080",".",".","1",".",".",".",".","102","ASP","N",".","15060","1"],["934",".","1","1","103","103","SER","H","H","1","8.239",".",".","1",".",".",".",".","103","SER","HN",".","15060","1"],["935",".","1","1","103","103","SER","HA","H","1","4.420",".",".","1",".",".",".",".","103","SER","HA",".","15060","1"],["936",".","1","1","103","103","SER","HB2","H","1","3.870",".",".","1",".",".",".",".","103","SER","HB1",".","15060","1"],["937",".","1","1","103","103","SER","HB3","H","1","3.870",".",".","1",".",".",".",".","103","SER","HB2",".","15060","1"],["938",".","1","1","103","103","SER","C","C","13","174.385",".",".","1",".",".",".",".","103","SER","C",".","15060","1"],["939",".","1","1","103","103","SER","CA","C","13","58.470",".",".","1",".",".",".",".","103","SER","CA",".","15060","1"],["940",".","1","1","103","103","SER","CB","C","13","64.280",".",".","1",".",".",".",".","103","SER","CB",".","15060","1"],["941",".","1","1","103","103","SER","N","N","15","115.602",".",".","1",".",".",".",".","103","SER","N",".","15060","1"],["942",".","1","1","104","104","ASP","H","H","1","8.409",".",".","1",".",".",".",".","104","ASP","HN",".","15060","1"],["943",".","1","1","104","104","ASP","HA","H","1","4.640",".",".","1",".",".",".",".","104","ASP","HA",".","15060","1"],["944",".","1","1","104","104","ASP","HB2","H","1","2.664",".",".","2",".",".",".",".","104","ASP","HB1",".","15060","1"],["945",".","1","1","104","104","ASP","HB3","H","1","2.740",".",".","2",".",".",".",".","104","ASP","HB2",".","15060","1"],["946",".","1","1","104","104","ASP","C","C","13","176.192",".",".","1",".",".",".",".","104","ASP","C",".","15060","1"],["947",".","1","1","104","104","ASP","CA","C","13","54.567",".",".","1",".",".",".",".","104","ASP","CA",".","15060","1"],["948",".","1","1","104","104","ASP","CB","C","13","41.250",".",".","1",".",".",".",".","104","ASP","CB",".","15060","1"],["949",".","1","1","104","104","ASP","N","N","15","122.658",".",".","1",".",".",".",".","104","ASP","N",".","15060","1"],["950",".","1","1","105","105","GLU","H","H","1","8.269",".",".","1",".",".",".",".","105","GLU","HN",".","15060","1"],["951",".","1","1","105","105","GLU","HA","H","1","4.271",".",".","1",".",".",".",".","105","GLU","HA",".","15060","1"],["952",".","1","1","105","105","GLU","HB2","H","1","2.080",".",".","2",".",".",".",".","105","GLU","HB1",".","15060","1"],["953",".","1","1","105","105","GLU","HB3","H","1","1.900",".",".","2",".",".",".",".","105","GLU","HB2",".","15060","1"],["954",".","1","1","105","105","GLU","HG2","H","1","2.260",".",".","1",".",".",".",".","105","GLU","HG1",".","15060","1"],["955",".","1","1","105","105","GLU","HG3","H","1","2.260",".",".","1",".",".",".",".","105","GLU","HG2",".","15060","1"],["956",".","1","1","105","105","GLU","C","C","13","176.313",".",".","1",".",".",".",".","105","GLU","C",".","15060","1"],["957",".","1","1","105","105","GLU","CA","C","13","56.521",".",".","1",".",".",".",".","105","GLU","CA",".","15060","1"],["958",".","1","1","105","105","GLU","CB","C","13","30.363",".",".","1",".",".",".",".","105","GLU","CB",".","15060","1"],["959",".","1","1","105","105","GLU","N","N","15","120.647",".",".","1",".",".",".",".","105","GLU","N",".","15060","1"],["960",".","1","1","106","106","GLU","H","H","1","8.391",".",".","1",".",".",".",".","106","GLU","HN",".","15060","1"],["961",".","1","1","106","106","GLU","HA","H","1","4.300",".",".","1",".",".",".",".","106","GLU","HA",".","15060","1"],["962",".","1","1","106","106","GLU","HB2","H","1","2.070",".",".","2",".",".",".",".","106","GLU","HB1",".","15060","1"],["963",".","1","1","106","106","GLU","HB3","H","1","1.910",".",".","2",".",".",".",".","106","GLU","HB2",".","15060","1"],["964",".","1","1","106","106","GLU","HG2","H","1","2.260",".",".","1",".",".",".",".","106","GLU","HG1",".","15060","1"],["965",".","1","1","106","106","GLU","HG3","H","1","2.260",".",".","1",".",".",".",".","106","GLU","HG2",".","15060","1"],["966",".","1","1","106","106","GLU","C","C","13","175.388",".",".","1",".",".",".",".","106","GLU","C",".","15060","1"],["967",".","1","1","106","106","GLU","CA","C","13","56.400",".",".","1",".",".",".",".","106","GLU","CA",".","15060","1"],["968",".","1","1","106","106","GLU","CB","C","13","30.640",".",".","1",".",".",".",".","106","GLU","CB",".","15060","1"],["969",".","1","1","106","106","GLU","CG","C","13","36.160",".",".","1",".",".",".",".","106","GLU","CG",".","15060","1"],["970",".","1","1","106","106","GLU","N","N","15","122.119",".",".","1",".",".",".",".","106","GLU","N",".","15060","1"],["971",".","1","1","107","107","ASP","H","H","1","8.048",".",".","1",".",".",".",".","107","ASP","HN",".","15060","1"],["972",".","1","1","107","107","ASP","CA","C","13","56.208",".",".","1",".",".",".",".","107","ASP","CA",".","15060","1"],["973",".","1","1","107","107","ASP","CB","C","13","42.204",".",".","1",".",".",".",".","107","ASP","CB",".","15060","1"],["974",".","1","1","107","107","ASP","N","N","15","127.146",".",".","1",".",".",".",".","107","ASP","N",".","15060","1"]],"tags":["ID","Assembly_atom_ID","Entity_assembly_ID","Entity_ID","Comp_index_ID","Seq_ID","Comp_ID","Atom_ID","Atom_type","Atom_isotope_number","Val","Val_err","Assign_fig_of_merit","Ambiguity_code","Occupancy","Resonance_ID","Auth_entity_assembly_ID","Auth_asym_ID","Auth_seq_ID","Auth_comp_ID","Auth_atom_ID","Details","Entry_ID","Assigned_chem_shift_list_ID"]}]}}' x <- fromJSON( json ) checkTrue( is.list(x) ) checkTrue( length(x) == 1 ) checkTrue( is.list(x[["15060"]]) ) checkTrue( length(x[["15060"]][["Atom_chem_shift"]]) == 1 ) } rjson/inst/unittests/test.unicode.r0000644000176200001440000000264513646044300017222 0ustar liggesusers.setUp <- function() {} .tearDown <- function() {} test.unicode <- function() { json <- "\"\"" x <- fromJSON( json ) checkIdentical( x, "" ) #test ASCII compatible utf8 json <- "\"\\u0041\\u006c\\u0065\\u0078\\u002B\"" x <- fromJSON( json ) checkIdentical( x, "Alex+", paste( "got:", x ) ) #test 2 byte utf8 unicode json <- "\"\\u018E\"" x <- fromJSON( json ) checkIdentical( x, "\u018E" ) checkTrue( all( charToRaw( x ) == c( 0xc6, 0x8e ) ) ) checkTrue( length( charToRaw( x ) ) == 2 ) #test 2 byte utf8 unicode json <- "\"\\u018E\"" x <- fromJSON( json ) checkIdentical( x, "\u018E" ) checkTrue( all( charToRaw( x ) == c( 0xc6, 0x8e ) ) ) checkTrue( length( charToRaw( x ) ) == 2 ) #test 3 byte utf8 unicode json <- "\"\\u3020\"" x <- fromJSON( json ) checkIdentical( x, "\u3020" ) checkTrue( all( charToRaw( x ) == c( 0xe3, 0x80, 0xa0 ) ) ) checkTrue( length( charToRaw( x ) ) == 3 ) #test 4 byte utf8 unicode roundtrip emo <- "\U1F600" checkIdentical(fromJSON(toJSON(emo)), emo) #x = newJSONParser() #x$addData( "\"\\u00" ) #checkTrue( is.null( x$getObject() ) ) #should be incomplete # test surrogate pair json <- "\"Anaheim \\ud83d\\ude0eDucks\"" x <- fromJSON( json ) checkIdentical( x, "Anaheim \xf0\x9f\x98\x8eDucks" ) x <- fromJSON("{\"a\":\"ï\"}") checkIdentical( x$a, "ï" ) x <- toJSON(x$a) checkIdentical( x, "\"\\u00ef\"" ) # note that re-encoded will use escaped unicode form } rjson/inst/unittests/test.list.r0000644000176200001440000000304313646044300016540 0ustar liggesusers.setUp <- function() {} .tearDown <- function() {} test.list <- function() { json <- "{}" x <- fromJSON( json ) checkIdentical( x, list() ) failing_json <- c( "{", "{a:5}", "{\"a:5}", "{\"a\":", "{\"a\":5", "{\"a\":}", "{123:false}", "{\"a\":unquoted}" ) for( bad_json in failing_json ) { x <- try( fromJSON( bad_json ), silent = TRUE ) checkTrue( any( class( x ) == "try-error" ) ) } json <- "{\"a\":5}" x <- fromJSON( json ) checkIdentical( x, list( a = 5 ) ) json <- "{\"a\":5,\"b\":10}" x <- fromJSON( json ) checkIdentical( x, list( a = 5, b = 10 ) ) json <- "{\"a\":5,\"b\":10, \"clap\":[true,false,false]}" x <- fromJSON( json ) correct <- list( a = 5, b = 10, clap = c(TRUE,FALSE,FALSE) ) checkIdentical( x, correct ) checkIdentical( x[["clap"]], correct[["clap"]] ) } test.nestedlist <- function() { json <- "[\"a\", [\"b\", \"c\"] ]" x <- fromJSON( json ) correct <- list( "a", c( "b", "c" ) ) checkIdentical( x, correct ) checkIdentical( x[[2]], correct[[2]] ) } test.bad.list <- function() { bad_json <- "{\"a\": 123,}" x <- try( fromJSON( bad_json ), silent = TRUE ) checkTrue( any( class( x ) == "try-error" ) ) } test.unsupported.sexp <- function() { x <- fromJSON('{ "key":[ { "foo":"bar" }, { "bah":"baz" }] }') correct <- list( key = list( list( foo = "bar" ), list( bah = "baz" ) )) checkIdentical( x, correct ) } test.rejected.comma <- function() { bad_json = '{ "key":[ { "foo":"bar" }, { "bah":"baz" },] }' x <- try( fromJSON( bad_json ), silent = TRUE ) checkTrue( any( class( x ) == "try-error" ) ) } rjson/inst/unittests/test.big.r0000644000176200001440000022677413646044300016350 0ustar liggesusers test.big <- function() { x <- "{\"client_crash_date\": \"2011-03-07 05:13:12.0\", \"dump\": \"OS|Windows NT|5.1.2600 Service Pack 3\\nCPU|x86|GenuineIntel family 15 model 4 stepping 9|1\\nCrash|EXCEPTION_BREAKPOINT|0x7d1a39|35\\nModule|mozsqlite3.dll|3.7.4.0|mozsqlite3.pdb|CCD45CF588204B1A8CEF6FECB6B93E792|0x002f0000|0x003adfff|1\\nModule|nspr4.dll|4.8.7.0|nspr4.pdb|FDA5820F749843EC874389EAB4E93BE31|0x003b0000|0x003e0fff|0\\nModule|plc4.dll|4.8.7.0|plc4.pdb|D597300208DE4FC280BF6EE27D65B2CA1|0x003f0000|0x003f6fff|0\\nModule|firefox.exe|2.0.0.4070|firefox.pdb|C4A306AC5FEF4AEC8C1D4B5FB67AC5962|0x00400000|0x004dffff|0\\nModule|mozjs.dll||mozjs.pdb|52A98E4CEEFF4B49B3CCFB5F982EEB502|0x004e0000|0x006a9fff|0\\nModule|smime3.dll|3.12.9.0|smime3.pdb|C4A927FA7F2C40F2A4CE92ECFD85AB8F1|0x006b0000|0x006c7fff|0\\nModule|nss3.dll|3.12.9.0|nss3.pdb|2BA2153B4E9B4E9584B1607C74B49D731|0x006d0000|0x0076cfff|0\\nModule|nssutil3.dll|3.12.9.0|nssutil3.pdb|8AF09479D67149F49A1D6A449114A7151|0x00770000|0x00783fff|0\\nModule|plds4.dll|4.8.7.0|plds4.pdb|E415FC709E07498198C66014653CC5411|0x00790000|0x00796fff|0\\nModule|ssl3.dll|3.12.9.0|ssl3.pdb|24D906A8F8A0487591D3824EED19DFC41|0x007a0000|0x007c0fff|0\\nModule|mozalloc.dll|2.0.0.4070|mozalloc.pdb|584764FC91694A68BFB321843787472E2|0x007d0000|0x007d5fff|0\\nModule|xpcom.dll|2.0.0.4070|xpcom.pdb|8DF06173F9764BA1B96E8137AC7D8B952|0x007e0000|0x007e6fff|0\\nModule|Iminent.WinCore.dll|3.47.0.0|||0x012e0000|0x012edfff|0\\nModule|browsercomps.dll|2.0.0.4070|browsercomps.pdb|ECF64DE0EC534626B0A3463F506FB4172|0x02800000|0x02820fff|0\\nModule|F3HKSTUB.DLL|1.0.0.0|f3hkstub.pdb|4C75A6EB1|0x02920000|0x02925fff|0\\nModule|RadioWMPCore.dll||RadioWMPCore.pdb|165E7A3FF5404CF28E6E55658F2466D51|0x02a30000|0x02a4afff|0\\nModule|softokn3.dll|3.12.9.0|softokn3.pdb|F43E2E3D6CE54276B054B916557C99301|0x03600000|0x03626fff|0\\nModule|nssdbm3.dll|3.12.9.0|nssdbm3.pdb|671501D946A64CF7A375B506033131F01|0x03630000|0x03647fff|0\\nModule|freebl3.dll|3.12.9.0|freebl3.pdb|0716E0E00A644CC09C0070C3966B0F961|0x03650000|0x03693fff|0\\nModule|nssckbi.dll|1.81.0.0|nssckbi.pdb|FF4BEC1F2A1D4069BF727A4088E5FEC71|0x036a0000|0x036f1fff|0\\nModule|xpsp2res.dll|5.1.2600.5512|||0x03900000|0x03bd5fff|0\\nModule|NPMYWEBS.DLL|1.0.0.0|NPMyWebS.pdb|4C75A6D41|0x05b60000|0x05b65fff|0\\nModule|M3PLUGIN.DLL|1.1.0.6|m3Plugin.pdb|4C75A6D81|0x05b70000|0x05b7dfff|0\\nModule|MWSOESTB.DLL|1.2.4.0|mwsoestb.pdb|4B2AF61A1|0x07f50000|0x07f5afff|0\\nModule|normaliz.dll|6.0.5441.0|normaliz.pdb|D0658E322B2D4DDCA57FB9C9715C6CAD1|0x094e0000|0x094e8fff|0\\nModule|xul.dll|2.0.0.4070|xul.pdb|EAD6C11B057D423D976392142725A5382|0x10000000|0x10daefff|0\\nModule|mdnsNSP.dll|1.0.3.1|mdnsNSP.pdb|0AF2F131804446D8BC574BC39DEF79F91|0x16080000|0x16098fff|0\\nModule|netapi32.dll|5.1.2600.5512|netapi32.pdb|FB9EEF3B11C949BA95FBD378260A07B02|0x597f0000|0x59844fff|0\\nModule|uxtheme.dll|6.0.2900.5512|uxtheme.pdb|E99E16308F094767B1F07FB5C3E5E2462|0x5b150000|0x5b187fff|0\\nModule|dbghelp.dll|5.1.2600.5512|dbghelp.pdb|7FA1C63A9BF54470BCA31E35A94F49971|0x5d4b0000|0x5d550fff|0\\nModule|iertutil.dll|7.0.5730.13|iertutil.pdb|EE4D411A91474AA79C2966293E0B73DA2|0x5dca0000|0x5dce4fff|0\\nModule|snxhk.dll|5.1.889.0|snxhk.pdb|6C3E58D898DF46A0BD5CDC2E19CD87DA1|0x64d00000|0x64d30fff|0\\nModule|hnetcfg.dll|5.1.2600.5512|HNetCfg.pdb|87332C2BFF6E42FCB89784A1D24EC2711|0x66740000|0x66798fff|0\\nModule|rsaenh.dll|5.1.2600.5507|rsaenh.pdb|893323FC16E048E8943A01E789A49C9B1|0x68000000|0x68035fff|0\\nModule|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x68040000|0x68300fff|0\\nModule|feclient.dll|5.1.2600.5512|feclient.pdb|D063E98372D14444BE0B1ECEABF191271|0x698d0000|0x698d8fff|0\\nModule|mswsock.dll|5.1.2600.5512|mswsock.pdb|0BC563E52F9E43E49E074DA97D4171712|0x719d0000|0x71a0ffff|0\\nModule|wshtcpip.dll|5.1.2600.5512|wshtcpip.pdb|DE2E52603FFB406D9052C8D884A1AD722|0x71a10000|0x71a17fff|0\\nModule|ws2help.dll|5.1.2600.5512|ws2help.pdb|6049CF5877C54E2AB512ABC1B4B2E7992|0x71a20000|0x71a27fff|0\\nModule|ws2_32.dll|5.1.2600.5512|ws2_32.pdb|A7605F8695A34329B38DDB8421A004CA2|0x71a30000|0x71a46fff|0\\nModule|wsock32.dll|5.1.2600.5512|wsock32.pdb|2B38FE8F84144DACB8A4FD07C05E49FC2|0x71a50000|0x71a59fff|0\\nModule|mpr.dll|5.1.2600.5512|mpr.pdb|A9B542306C364AA2BAF25EFE9F3C2B5A2|0x71aa0000|0x71ab1fff|0\\nModule|samlib.dll|5.1.2600.5512|samlib.pdb|4BB85DE79B104F1595F96DF1ADAC91C82|0x71b90000|0x71ba2fff|0\\nModule|msacm32.drv|5.1.2600.0|msacm32.pdb|3B7D82B51|0x72c90000|0x72c97fff|0\\nModule|wdmaud.drv|5.1.2600.5512|wdmdrv.pdb|CC3EC71E05C44E6595271A6773E15AF21|0x72ca0000|0x72ca8fff|0\\nModule|winspool.drv|5.1.2600.5512|winspool.pdb|5199B63B39904A05A517CEE5158071522|0x72f80000|0x72fa5fff|0\\nModule|vbscript.dll|5.7.0.16599|vbscript.pdb|22EE02E44C844093937E481AF7C079C12|0x73280000|0x732e9fff|0\\nModule|mscms.dll|5.1.2600.5512|mscms.pdb|58640C648DA24D56912927158414FA8C2|0x73ab0000|0x73ac4fff|0\\nModule|t2embed.dll|5.1.2600.5512|t2embed.pdb|731403DF32C24A29AFB4DC3D4825E4411|0x73c60000|0x73c7ffff|0\\nModule|lz32.dll|5.1.2600.0|lz32.pdb|3B7D84BD1|0x73d40000|0x73d42fff|0\\nModule|MSCTF.dll|5.1.2600.5512|msctf.pdb|C52F0B4C00E94556AE999F228B0019662|0x746b0000|0x746fbfff|0\\nModule|usp10.dll|1.420.2600.5512|usp10.pdb|0F289BC0C9A94139BC1C31EDEDBF52311|0x74d20000|0x74d8afff|0\\nModule|MSCTFIME.IME|5.1.2600.5512|msctfime.pdb|602288883AF44453979369233E091E641|0x75160000|0x7518dfff|0\\nModule|msimg32.dll|5.1.2600.5512|msimg32.pdb|D2E18526D8234F4BB5A85DE12E71DE812|0x76330000|0x76334fff|0\\nModule|imm32.dll|5.1.2600.5512|imm32.pdb|F7A5B5DB13324153B57AAF340C77EA512|0x76340000|0x7635cfff|0\\nModule|comdlg32.dll|6.0.2900.5512|comdlg32.pdb|026A6FF770FD4E6186ADBBE96DFFA99C2|0x76360000|0x763a9fff|0\\nModule|userenv.dll|5.1.2600.5512|userenv.pdb|9FEE774E547347799689D6BAF9DAB4102|0x76630000|0x766e4fff|0\\nModule|cryptui.dll|5.131.2600.5512|cryptui.pdb|EBC7B38E15F9461D9BBC9317BBB7E8D42|0x76890000|0x76913fff|0\\nModule|sxs.dll|5.1.2600.5512|sxs.pdb|13300A765A3B4E9BAE52C373053C152F2|0x76980000|0x76a30fff|0\\nModule|winmm.dll|5.1.2600.5512|winmm.pdb|90FC96D5AD8440A2B14855895BD92ED62|0x76b00000|0x76b2dfff|0\\nModule|psapi.dll|5.1.2600.5512|psapi.pdb|B9875A55C874489384EA8FB805322C312|0x76bb0000|0x76bbafff|0\\nModule|wintrust.dll|5.131.2600.5512|wintrust.pdb|91992FC368B7419889AC7597420354F52|0x76bf0000|0x76c1dfff|0\\nModule|imagehlp.dll|5.1.2600.5512|imagehlp.pdb|111D199988C249ACA0335F467A6311412|0x76c50000|0x76c77fff|0\\nModule|iphlpapi.dll|5.1.2600.5512|iphlpapi.pdb|9B09F073003F4CA48F9980B3C091448F2|0x76d20000|0x76d38fff|0\\nModule|dnsapi.dll|5.1.2600.5512|dnsapi.pdb|2602DE4D984348A8A8C36DD43F02E2152|0x76ee0000|0x76f06fff|0\\nModule|wldap32.dll|5.1.2600.5512|wldap32.pdb|AC04BCF6FF294FCEAC8B8D937CBA3A172|0x76f20000|0x76f4cfff|0\\nModule|winrnr.dll|5.1.2600.5512|winrnr.pdb|9FE1A4669B69400FAC821A4367AA9CC52|0x76f70000|0x76f77fff|0\\nModule|rasadhlp.dll|5.1.2600.5512|rasadhlp.pdb|CCA669B1582847D0B330D7ABDB446A472|0x76f80000|0x76f85fff|0\\nModule|clbcatq.dll|2001.12.4414.700|clbcatq.pdb|8AE9C54730824764AAF39EA69F8D87582|0x76f90000|0x7700efff|0\\nModule|comres.dll|2001.12.4414.700|COMRes.pdb|A02453A3EB42413FBFF95326893E977Df|0x77010000|0x770dffff|0\\nModule|oleaut32.dll|5.1.2600.5512|oleaut32.pdb|F2A209009B694EFCAD1A6CE9D992EBC12|0x770f0000|0x7717afff|0\\nModule|wininet.dll|7.0.5730.13|wininet.pdb|9EA644C8A78041C1BB0FC6D6ACFE8E202|0x771b0000|0x7727dfff|0\\nModule|comctl32.dll|6.0.2900.5512|MicrosoftWindowsCommon-Controls-6.0.2600.5512-comctl32.pdb|505057971C40416FB39FED1D39BED0571|0x773a0000|0x774a2fff|0\\nModule|ole32.dll|5.1.2600.5512|ole32.pdb|ED517599D2C14CF19200861833059C142|0x774b0000|0x775ecfff|0\\nModule|ntmarta.dll|5.1.2600.5512|ntmarta.pdb|EB9B3E21F92F4F51AD85D86F4D7741A82|0x77660000|0x77680fff|0\\nModule|setupapi.dll|5.1.2600.5512|setupapi.pdb|9D52182415AA4179960B37F4C694F90D2|0x778f0000|0x779e6fff|0\\nModule|crypt32.dll|5.131.2600.5512|crypt32.pdb|3D2E43BF4FF5446B83957512615FD0942|0x77a50000|0x77ae5fff|0\\nModule|msasn1.dll|5.1.2600.5512|msasn1.pdb|DBFCEAEE0AB647F7BB94623535C531262|0x77af0000|0x77b01fff|0\\nModule|midimap.dll|5.1.2600.5512|midimap.pdb|D9AE872F08744C789E5170943BBBD10D1|0x77ba0000|0x77ba6fff|0\\nModule|msacm32.dll|5.1.2600.5512|msacm32.pdb|8256BD89DE024F3C970B66B9B5E5D8992|0x77bb0000|0x77bc4fff|0\\nModule|version.dll|5.1.2600.5512|version.pdb|EA3D1BD3FE65475C8449C8D8B00722962|0x77bd0000|0x77bd7fff|0\\nModule|msvcrt.dll|7.0.2600.5512|msvcrt.pdb|7BCF30D8C91B4F1B85FA4E55896250111|0x77be0000|0x77c37fff|0\\nModule|advapi32.dll|5.1.2600.5512|advapi32.pdb|5EFB9BF42CC64024AB64802E467394642|0x77da0000|0x77e4bfff|0\\nModule|rpcrt4.dll|5.1.2600.5512|rpcrt4.pdb|CCD4FE9B704E48B6B8A12F31E112AA6F2|0x77e50000|0x77ee1fff|0\\nModule|gdi32.dll|5.1.2600.5512|gdi32.pdb|740F60A99F2A417E96C387400994588D2|0x77ef0000|0x77f38fff|0\\nModule|shlwapi.dll|6.0.2900.5512|shlwapi.pdb|8519E3403447478884CFFE7F1A91BAE02|0x77f40000|0x77fb5fff|0\\nModule|secur32.dll|5.1.2600.5512|secur32.pdb|E8D378740B8E4A46B19CAFCD2D6DDF7D2|0x77fc0000|0x77fd0fff|0\\nModule|mozcrt19.dll|8.0.0.0|MOZCRT19.pdb|14FCEDCA1CE34BD2A90401CBC9260D2D1|0x78130000|0x781defff|0\\nModule|mozcpp19.dll|8.0.0.0|MOZCPP19.pdb|68AC85FFFBB84AA58FCA4B9883BE11D91|0x7c420000|0x7c4cefff|0\\nModule|kernel32.dll|5.1.2600.5512|kernel32.pdb|34560E80F5C54175B208848EF863C5BD2|0x7c800000|0x7c902fff|0\\nModule|ntdll.dll|5.1.2600.5512|ntdll.pdb|1751003260CA42598C0FB326585000ED2|0x7c910000|0x7c9c4fff|0\\nModule|shdocvw.dll|6.0.2900.5512|shdocvw.pdb|709A33A5D8EE48BB8A437827FE342C0C2|0x7e210000|0x7e380fff|0\\nModule|user32.dll|5.1.2600.5512|user32.pdb|D18A41B74E7F458CAAAC1847E2D8BF022|0x7e390000|0x7e420fff|0\\nModule|shell32.dll|6.0.2900.5512|shell32.pdb|69B3829BB6884926A5B97BF04E812C6B2|0x7e6a0000|0x7eec0fff|0\\n\\n35|0|mozalloc.dll|mozalloc_abort(char const * const)|hg:hg.mozilla.org/mozilla-central:memory/mozalloc/mozalloc_abort.cpp:d322a1c8537e|77|0x0\\n35|1|xul.dll|NS_DebugBreak_P|hg:hg.mozilla.org/mozilla-central:xpcom/base/nsDebugImpl.cpp:d322a1c8537e|350|0xc\\n35|2|xul.dll|nsCycleCollectingAutoRefCnt::decr(nsISupports *)|||0x38\\n35|3|xul.dll|nsGlobalChromeWindow::Release()|hg:hg.mozilla.org/mozilla-central:dom/base/nsGlobalWindow.cpp:d322a1c8537e|1336|0x1a\\n35|4|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x4cabd\\n35|5|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0xaca7\\n35|6|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1f3e01\\n35|7|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0xafd7\\n35|8|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x11258\\n35|9|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x82298\\n35|10|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1f978a\\n35|11|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x82537\\n35|12|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x19ce51\\n35|13|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x20de7f\\n35|14|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x19d6df\\n35|15|ntdll.dll|LdrLoadDll|||0x14a\\n35|16|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x20df3f\\n35|17|kernel32.dll|BaseThreadStart|||0x36\\n35|18|ntdll.dll|LdrLoadDll|||0x14a\\n35|19|kernel32.dll|GetCodePageFileInfo|||0x138\\n0|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n0|1|user32.dll|NtUserWaitMessage|||0xb\\n0|2|xul.dll|nsAppShell::ProcessNextNativeEvent(int)|hg:hg.mozilla.org/mozilla-central:widget/src/windows/nsAppShell.cpp:d322a1c8537e|343|0x5\\n0|3|xul.dll|nsAbsoluteContainingBlock::ReflowAbsoluteFrame(nsIFrame *,nsPresContext *,nsHTMLReflowState const &,int,int,int,nsIFrame *,unsigned int &,nsOverflowAreas *)|hg:hg.mozilla.org/mozilla-central:layout/generic/nsAbsoluteContainingBlock.cpp:d322a1c8537e|500|0x9\\n1|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n1|1|ntdll.dll|NtCreateSection|||0xb\\n1|2|kernel32.dll|MapViewOfFile|||0x31\\n1|3|ntdll.dll|RtlQueryInformationActivationContext|||0x14e\\n1|4|kernel32.dll|CloseHandle|||0x43\\n2|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n2|1|ntdll.dll|ZwRemoveIoCompletion|||0xb\\n2|2|kernel32.dll|GetQueuedCompletionStatus|||0x28\\n2|3|xul.dll|base::MessagePumpForIO::GetIOItem(unsigned long,base::MessagePumpForIO::IOItem *)|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_pump_win.cc:d322a1c8537e|528|0x24\\n2|4|xul.dll|base::MessagePumpForIO::WaitForIOCompletion(unsigned long,base::MessagePumpForIO::IOHandler *)|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_pump_win.cc:d322a1c8537e|499|0xb\\n2|5|xul.dll|base::MessagePumpForIO::WaitForWork()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_pump_win.cc:d322a1c8537e|492|0xb\\n2|6|xul.dll|base::MessagePumpForIO::DoRunLoop()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_pump_win.cc:d322a1c8537e|477|0x5\\n2|7|xul.dll|base::MessagePumpWin::RunWithDispatcher(base::MessagePump::Delegate *,base::MessagePumpWin::Dispatcher *)|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_pump_win.cc:d322a1c8537e|52|0x6\\n2|8|xul.dll|base::MessagePumpWin::Run(base::MessagePump::Delegate *)|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_pump_win.h:d322a1c8537e|78|0xb\\n2|9|xul.dll|MessageLoop::RunInternal()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:d322a1c8537e|219|0x8\\n2|10|xul.dll|MessageLoop::RunHandler()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:d322a1c8537e|202|0x4\\n2|11|xul.dll|base::ThreadLocalPlatform::SetValueInSlot(int &,void *)|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/thread_local_win.cc:d322a1c8537e|33|0xa\\n2|12|xul.dll|MessageLoop::Run()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/message_loop.cc:d322a1c8537e|176|0x6\\n2|13|xul.dll|base::Thread::ThreadMain()|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/thread.cc:d322a1c8537e|156|0x8\\n2|14|xul.dll|`anonymous namespace'::ThreadFunc(void *)|hg:hg.mozilla.org/mozilla-central:ipc/chromium/src/base/platform_thread_win.cc:d322a1c8537e|26|0x8\\n2|15|kernel32.dll|BaseThreadStart|||0x36\\n3|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n3|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n3|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n3|3|kernel32.dll|WaitForSingleObject|||0x11\\n3|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n3|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n3|6|nspr4.dll|PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|547|0xa\\n3|7|xul.dll|nsCycleCollectorRunner::Run()|hg:hg.mozilla.org/mozilla-central:xpcom/base/nsCycleCollector.cpp:d322a1c8537e|3315|0xa\\n3|8|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|633|0x13\\n3|9|xul.dll|nsRunnable::Release()|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|55|0x2a\\n3|10|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n3|11|ntdll.dll|_SEH_epilog|||0x19\\n3|12|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n3|13|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n3|14|ntdll.dll|_SEH_epilog|||0x19\\n3|15|mozcrt19.dll|__dllonexit|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/onexit.c:d322a1c8537e|276|0x5\\n3|16|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n3|17|ntdll.dll|_SEH_epilog|||0x19\\n4|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n4|1|user32.dll|NtUserPostMessage|||0xb\\n4|2|xul.dll|nsThread::Dispatch(nsIRunnable *,unsigned int)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|433|0x42\\n4|3|xul.dll|nsTimerImpl::PostTimerEvent()|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsTimerImpl.cpp:d322a1c8537e|552|0x18\\n4|4|xul.dll|TimerThread::Run()|hg:hg.mozilla.org/mozilla-central:xpcom/threads/TimerThread.cpp:d322a1c8537e|313|0x6\\n4|5|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|633|0x13\\n4|6|xul.dll|nsRunnable::Release()|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|55|0x2a\\n4|7|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n4|8|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n4|9|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n4|10|mozcrt19.dll|__dllonexit|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/onexit.c:d322a1c8537e|276|0x5\\n4|11|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n4|12|kernel32.dll|GetCodePageFileInfo|||0x138\\n5|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n5|1|ntdll.dll|NtWaitForMultipleObjects|||0xb\\n5|2|kernel32.dll|CreateFileMappingA|||0x85\\n5|3|kernel32.dll|WaitForMultipleObjects|||0x17\\n5|4|xul.dll|nsNotifyAddrListener::Run()|hg:hg.mozilla.org/mozilla-central:netwerk/system/win32/nsNotifyAddrListener.cpp:d322a1c8537e|192|0xf\\n5|5|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|633|0x13\\n5|6|xul.dll|nsRunnable::Release()|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|55|0x2a\\n5|7|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n5|8|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n5|9|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n5|10|mozcrt19.dll|__dllonexit|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/onexit.c:d322a1c8537e|276|0x5\\n5|11|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n5|12|mozjs.dll||||0x19006d\\n6|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n6|1|ntdll.dll|ZwRemoveIoCompletion|||0xb\\n6|2|mswsock.dll|SockAsyncThread|||0x59\\n6|3|kernel32.dll|BaseThreadStart|||0x36\\n7|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n7|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n7|2|mswsock.dll|SockBuildSockaddr|||0x135\\n7|3|mswsock.dll|SockReleaseRwLockExclusive|||0x40\\n7|4|ws2_32.dll|select|||0xa6\\n7|5|nspr4.dll|_PR_MD_PR_POLL|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w32poll.c:d322a1c8537e|279|0xe\\n7|6|nspr4.dll|PR_Poll|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/io/prio.c:d322a1c8537e|173|0x12\\n7|7|xul.dll|nsSocketTransportService::Poll(int,unsigned int *)|hg:hg.mozilla.org/mozilla-central:netwerk/base/src/nsSocketTransportService2.cpp:d322a1c8537e|358|0xc\\n7|8|xul.dll|nsSocketTransportService::DoPollIteration(int)|hg:hg.mozilla.org/mozilla-central:netwerk/base/src/nsSocketTransportService2.cpp:d322a1c8537e|673|0x10\\n7|9|xul.dll|nsSocketTransportService::OnProcessNextEvent(nsIThreadInternal *,int,unsigned int)|hg:hg.mozilla.org/mozilla-central:netwerk/base/src/nsSocketTransportService2.cpp:d322a1c8537e|551|0xc\\n7|10|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|597|0x1\\n7|11|xul.dll|NS_ProcessPendingEvents_P(nsIThread *,unsigned int)|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|200|0xb\\n7|12|xul.dll|NS_ProcessNextEvent_P(nsIThread *,int)|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|250|0xc\\n7|13|xul.dll|nsSocketTransportService::Run()|hg:hg.mozilla.org/mozilla-central:netwerk/base/src/nsSocketTransportService2.cpp:d322a1c8537e|594|0x9\\n7|14|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|633|0x13\\n7|15|xul.dll|nsRunnable::Release()|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|55|0x2a\\n7|16|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n7|17|ntdll.dll|RtlpAdjustHeapLookasideDepth|||0x2d3\\n7|18|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n7|19|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n7|20|ntdll.dll|RtlpAdjustHeapLookasideDepth|||0x2d3\\n7|21|mozcrt19.dll|__dllonexit|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/onexit.c:d322a1c8537e|276|0x5\\n7|22|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n7|23|ntdll.dll|RtlpAdjustHeapLookasideDepth|||0x2d3\\n8|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n8|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n8|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n8|3|kernel32.dll|WaitForSingleObject|||0x11\\n8|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n8|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n8|6|nspr4.dll|PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|547|0xa\\n8|7|mozjs.dll|js::GCHelperThread::threadLoop(JSRuntime *)|hg:hg.mozilla.org/mozilla-central:js/src/jsgc.cpp:d322a1c8537e|2084|0xb\\n8|8|mozjs.dll|js::GCHelperThread::threadMain(void *)|hg:hg.mozilla.org/mozilla-central:js/src/jsgc.cpp:d322a1c8537e|2070|0xe\\n8|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n8|10|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n8|11|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n8|12|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n8|13|kernel32.dll|BaseThreadStart|||0x36\\n9|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n9|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n9|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n9|3|kernel32.dll|WaitForSingleObject|||0x11\\n9|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n9|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n9|6|nspr4.dll|PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|547|0xa\\n9|7|xul.dll|XPCJSRuntime::WatchdogMain(void *)|hg:hg.mozilla.org/mozilla-central:js/src/xpconnect/src/xpcjsruntime.cpp:d322a1c8537e|988|0xc\\n9|8|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n9|9|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n9|10|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n9|11|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n9|12|kernel32.dll|BaseThreadStart|||0x36\\n10|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n10|1|ntdll.dll|NtReplyWaitReceivePortEx|||0xb\\n10|2|rpcrt4.dll|RpcpPurgeEEInfoFromThreadIfNecessary(THREAD *)|||0x48\\n10|3|rpcrt4.dll|RecvLotsaCallsWrapper(LRPC_ADDRESS *)|||0xc\\n10|4|rpcrt4.dll|BaseCachedThreadRoutine(CACHED_THREAD *)|||0x52\\n10|5|rpcrt4.dll|ThreadStartRoutine(THREAD *)|||0x19\\n10|6|kernel32.dll|BaseThreadStart|||0x36\\n11|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n11|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n11|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n11|3|kernel32.dll|WaitForSingleObject|||0x11\\n11|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n11|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n11|6|nspr4.dll|PR_Wait|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/prmon.c:d322a1c8537e|184|0x13\\n11|7|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|616|0x8\\n11|8|xul.dll|nsRunnable::Release()|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|55|0x2a\\n11|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n11|10|ole32.dll|CheckDownloadRegistrySettings()|||0x59\\n11|11|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n11|12|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n11|13|ole32.dll|CheckDownloadRegistrySettings()|||0x59\\n11|14|mozcrt19.dll|__dllonexit|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/onexit.c:d322a1c8537e|276|0x5\\n11|15|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n11|16|kernel32.dll|GetCodePageFileInfo|||0x138\\n12|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n12|1|ntdll.dll|NtWaitForMultipleObjects|||0xb\\n12|2|kernel32.dll|CreateFileMappingA|||0x85\\n12|3|kernel32.dll|WaitForMultipleObjects|||0x17\\n12|4|wdmaud.drv|MixerCallbackThread|||0x41\\n12|5|kernel32.dll|BaseThreadStart|||0x36\\n13|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n13|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n13|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n13|3|kernel32.dll|WaitForSingleObject|||0x11\\n13|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n13|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n13|6|nspr4.dll|PR_Wait|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/prmon.c:d322a1c8537e|184|0x13\\n13|7|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|616|0x8\\n13|8|xul.dll|nsRunnable::Release()|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|55|0x2a\\n13|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n13|10|nspr4.dll|PR_ExitMonitor|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/prmon.c:d322a1c8537e|132|0x6\\n13|11|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n13|12|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n13|13|nspr4.dll|PR_ExitMonitor|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/prmon.c:d322a1c8537e|132|0x6\\n13|14|mozcrt19.dll|__dllonexit|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/onexit.c:d322a1c8537e|276|0x5\\n13|15|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n13|16|kernel32.dll|GetCodePageFileInfo|||0x138\\n14|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n14|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n14|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n14|3|kernel32.dll|WaitForSingleObject|||0x11\\n14|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n14|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n14|6|nspr4.dll|PR_Wait|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/prmon.c:d322a1c8537e|184|0x13\\n14|7|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|616|0x8\\n14|8|xul.dll|nsRunnable::Release()|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|55|0x2a\\n14|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n14|10|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n14|11|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n14|12|mozcrt19.dll|__dllonexit|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/onexit.c:d322a1c8537e|276|0x5\\n14|13|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n14|14|kernel32.dll|GetCodePageFileInfo|||0x138\\n15|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n15|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n15|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n15|3|kernel32.dll|WaitForSingleObject|||0x11\\n15|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n15|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n15|6|nspr4.dll|PR_Wait|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/prmon.c:d322a1c8537e|184|0x13\\n15|7|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|616|0x8\\n15|8|xul.dll|nsRunnable::Release()|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|55|0x2a\\n15|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n15|10|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n15|11|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n15|12|mozcrt19.dll|__dllonexit|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/onexit.c:d322a1c8537e|276|0x5\\n15|13|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n15|14|kernel32.dll|GetCodePageFileInfo|||0x138\\n16|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n16|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n16|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n16|3|kernel32.dll|WaitForSingleObject|||0x11\\n16|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n16|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n16|6|nspr4.dll|PR_Wait|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/prmon.c:d322a1c8537e|184|0x13\\n16|7|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|616|0x8\\n16|8|xul.dll|nsThreadStartupEvent::Run()|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|207|0xf\\n16|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n16|10|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n16|11|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n16|12|mozcrt19.dll|__dllonexit|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/onexit.c:d322a1c8537e|276|0x5\\n16|13|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n16|14|kernel32.dll|GetCodePageFileInfo|||0x138\\n17|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n17|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n17|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n17|3|kernel32.dll|WaitForSingleObject|||0x11\\n17|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n17|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n17|6|nspr4.dll|PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|547|0xa\\n17|7|xul.dll|nsSSLThread::Run()|hg:hg.mozilla.org/mozilla-central:security/manager/ssl/src/nsSSLThread.cpp:d322a1c8537e|980|0xa\\n17|8|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n17|9|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n17|10|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n17|11|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n17|12|kernel32.dll|BaseThreadStart|||0x36\\n18|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n18|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n18|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n18|3|kernel32.dll|WaitForSingleObject|||0x11\\n18|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n18|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n18|6|nspr4.dll|PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|547|0xa\\n18|7|xul.dll|nsCertVerificationThread::Run()|hg:hg.mozilla.org/mozilla-central:security/manager/ssl/src/nsCertVerificationThread.cpp:d322a1c8537e|138|0xa\\n18|8|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n18|9|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n18|10|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n18|11|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n18|12|kernel32.dll|BaseThreadStart|||0x36\\n19|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n19|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n19|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n19|3|kernel32.dll|WaitForSingleObject|||0x11\\n19|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n19|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n19|6|nspr4.dll|PR_Wait|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/prmon.c:d322a1c8537e|184|0x13\\n19|7|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|616|0x8\\n19|8|xul.dll|nsRunnable::Release()|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|55|0x2a\\n19|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n19|10|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n19|11|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n19|12|mozcrt19.dll|__dllonexit|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/onexit.c:d322a1c8537e|276|0x5\\n19|13|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n19|14|kernel32.dll|GetCodePageFileInfo|||0x138\\n20|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n20|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n20|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n20|3|kernel32.dll|WaitForSingleObject|||0x11\\n20|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n20|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n20|6|nspr4.dll|PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|547|0xa\\n20|7|xul.dll|nsHostResolver::GetHostToLookup(nsHostRecord * *)|hg:hg.mozilla.org/mozilla-central:netwerk/dns/nsHostResolver.cpp:d322a1c8537e|777|0xe\\n20|8|xul.dll|nsHostResolver::ThreadFunc(void *)|hg:hg.mozilla.org/mozilla-central:netwerk/dns/nsHostResolver.cpp:d322a1c8537e|881|0x9\\n20|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n20|10|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n20|11|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n20|12|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n20|13|kernel32.dll|BaseThreadStart|||0x36\\n21|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n21|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n21|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n21|3|kernel32.dll|WaitForSingleObject|||0x11\\n21|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n21|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n21|6|nspr4.dll|PR_Wait|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/prmon.c:d322a1c8537e|184|0x13\\n21|7|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|616|0x8\\n21|8|xul.dll|nsRunnable::Release()|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|55|0x2a\\n21|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n21|10|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n21|11|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n21|12|mozcrt19.dll|__dllonexit|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/onexit.c:d322a1c8537e|276|0x5\\n21|13|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n21|14|kernel32.dll|GetCodePageFileInfo|||0x138\\n22|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n22|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n22|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n22|3|kernel32.dll|WaitForSingleObject|||0x11\\n22|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n22|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n22|6|nspr4.dll|PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|547|0xa\\n22|7|xul.dll|nsHostResolver::GetHostToLookup(nsHostRecord * *)|hg:hg.mozilla.org/mozilla-central:netwerk/dns/nsHostResolver.cpp:d322a1c8537e|777|0xe\\n22|8|xul.dll|nsHostResolver::ThreadFunc(void *)|hg:hg.mozilla.org/mozilla-central:netwerk/dns/nsHostResolver.cpp:d322a1c8537e|881|0x9\\n22|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n22|10|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n22|11|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n22|12|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n22|13|kernel32.dll|BaseThreadStart|||0x36\\n23|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n23|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n23|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n23|3|kernel32.dll|WaitForSingleObject|||0x11\\n23|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n23|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n23|6|nspr4.dll|PR_Wait|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/prmon.c:d322a1c8537e|184|0x13\\n23|7|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|616|0x8\\n23|8|xul.dll|nsRunnable::Release()|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|55|0x2a\\n23|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n23|10|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n23|11|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n23|12|mozcrt19.dll|__dllonexit|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/onexit.c:d322a1c8537e|276|0x5\\n23|13|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n23|14|kernel32.dll|GetCodePageFileInfo|||0x138\\n24|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n24|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n24|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n24|3|kernel32.dll|WaitForSingleObject|||0x11\\n24|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n24|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n24|6|nspr4.dll|PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|547|0xa\\n24|7|xul.dll|nsHostResolver::GetHostToLookup(nsHostRecord * *)|hg:hg.mozilla.org/mozilla-central:netwerk/dns/nsHostResolver.cpp:d322a1c8537e|777|0xe\\n24|8|xul.dll|nsHostResolver::ThreadFunc(void *)|hg:hg.mozilla.org/mozilla-central:netwerk/dns/nsHostResolver.cpp:d322a1c8537e|881|0x9\\n24|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n24|10|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n24|11|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n24|12|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n24|13|kernel32.dll|BaseThreadStart|||0x36\\n25|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n25|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n25|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n25|3|kernel32.dll|WaitForSingleObject|||0x11\\n25|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n25|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n25|6|nspr4.dll|PR_Wait|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/prmon.c:d322a1c8537e|184|0x13\\n25|7|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|616|0x8\\n25|8|xul.dll|nsRunnable::Release()|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|55|0x2a\\n25|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n25|10|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n25|11|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n25|12|mozcrt19.dll|__dllonexit|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/onexit.c:d322a1c8537e|276|0x5\\n25|13|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n25|14|kernel32.dll|GetCodePageFileInfo|||0x138\\n26|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n26|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n26|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n26|3|kernel32.dll|WaitForSingleObject|||0x11\\n26|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n26|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n26|6|nspr4.dll|PR_Wait|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/prmon.c:d322a1c8537e|184|0x13\\n26|7|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/mozilla-central:xpcom/threads/nsThread.cpp:d322a1c8537e|616|0x8\\n26|8|xul.dll|nsRunnable::Release()|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsThreadUtils.cpp:d322a1c8537e|55|0x2a\\n26|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n26|10|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n26|11|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n26|12|mozcrt19.dll|__dllonexit|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/onexit.c:d322a1c8537e|276|0x5\\n26|13|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n26|14|kernel32.dll|GetCodePageFileInfo|||0x138\\n27|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n27|1|ntdll.dll|NtWaitForMultipleObjects|||0xb\\n27|2|kernel32.dll|CreateFileMappingA|||0x85\\n27|3|advapi32.dll|WmipEventPump|||0x1a6\\n27|4|kernel32.dll|BaseThreadStart|||0x36\\n28|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n28|1|ntdll.dll|NtWaitForMultipleObjects|||0xb\\n28|2|kernel32.dll|CreateFileMappingA|||0x85\\n28|3|kernel32.dll|WaitForMultipleObjects|||0x17\\n28|4|xul.dll|nsDownloadScannerWatchdog::WatchdogThread(void *)|hg:hg.mozilla.org/mozilla-central:toolkit/components/downloads/src/nsDownloadScanner.cpp:d322a1c8537e|704|0x1b\\n28|5|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n28|6|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n28|7|kernel32.dll|BaseThreadStart|||0x36\\n29|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n29|1|ntdll.dll|NtFlushBuffersFile|||0xb\\n29|2|kernel32.dll|FlushFileBuffers|||0x49\\n29|3|nspr4.dll|FileSync|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/io/prfile.c:d322a1c8537e|222|0x10\\n29|4|xul.dll|nsFileOutputStream::Flush()|hg:hg.mozilla.org/mozilla-central:netwerk/base/src/nsFileStreams.cpp:d322a1c8537e|610|0x6\\n29|5|xul.dll|nsSafeFileOutputStream::Finish()|hg:hg.mozilla.org/mozilla-central:netwerk/base/src/nsFileStreams.cpp:d322a1c8537e|715|0x8\\n29|6|xul.dll|nsCOMPtr_base::assign_from_qi(nsQueryInterface,nsID const &)|hg:hg.mozilla.org/mozilla-central:obj-firefox/xpcom/build/nsCOMPtr.cpp:d322a1c8537e|98|0x7\\n29|7|nspr4.dll||||0x1b38f\\n30|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n30|1|ntdll.dll|NtReplyWaitReceivePortEx|||0xb\\n30|2|rpcrt4.dll|RpcpPurgeEEInfoFromThreadIfNecessary(THREAD *)|||0x48\\n30|3|rpcrt4.dll|RecvLotsaCallsWrapper(LRPC_ADDRESS *)|||0xc\\n30|4|rpcrt4.dll|BaseCachedThreadRoutine(CACHED_THREAD *)|||0x52\\n30|5|rpcrt4.dll|ThreadStartRoutine(THREAD *)|||0x19\\n30|6|kernel32.dll|BaseThreadStart|||0x36\\n31|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n31|1|ntdll.dll|NtWaitForMultipleObjects|||0xb\\n31|2|ntdll.dll|RtlpWaitThread|||0x126\\n31|3|kernel32.dll|BaseThreadStart|||0x36\\n32|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n32|1|ntdll.dll|ZwDelayExecution|||0xb\\n32|2|ntdll.dll|RtlpTimerThread|||0x46\\n32|3|kernel32.dll|BaseThreadStart|||0x36\\n33|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n33|1|ntdll.dll|ZwRemoveIoCompletion|||0xb\\n33|2|ntdll.dll|RtlpWorkerThread|||0x3c\\n33|3|kernel32.dll|BaseThreadStart|||0x36\\n34|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n34|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n34|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n34|3|kernel32.dll|WaitForSingleObject|||0x11\\n34|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95cv.c:d322a1c8537e|280|0xd\\n34|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|204|0x1b\\n34|6|nspr4.dll|PR_WaitCondVar|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/prucv.c:d322a1c8537e|547|0xa\\n34|7|xul.dll|nsHostResolver::GetHostToLookup(nsHostRecord * *)|hg:hg.mozilla.org/mozilla-central:netwerk/dns/nsHostResolver.cpp:d322a1c8537e|777|0xe\\n34|8|xul.dll|nsHostResolver::ThreadFunc(void *)|hg:hg.mozilla.org/mozilla-central:netwerk/dns/nsHostResolver.cpp:d322a1c8537e|881|0x9\\n34|9|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/threads/combined/pruthr.c:d322a1c8537e|426|0x8\\n34|10|nspr4.dll|pr_root|hg:hg.mozilla.org/mozilla-central:nsprpub/pr/src/md/windows/w95thred.c:d322a1c8537e|122|0xc\\n34|11|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|348|0x8\\n34|12|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/mozilla-central:obj-firefox/memory/jemalloc/crtsrc/threadex.c:d322a1c8537e|326|0x4\\n34|13|kernel32.dll|BaseThreadStart|||0x36\\n36|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n36|1|ntdll.dll|NtWaitForMultipleObjects|||0xb\\n36|2|kernel32.dll|CreateFileMappingA|||0x85\\n36|3|kernel32.dll|WaitForMultipleObjects|||0x17\\n36|4|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x4e8b6\\n36|5|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x506fc\\n36|6|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x5094f\\n36|7|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x5515\\n36|8|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x3f73b\\n36|9|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1f2a07\\n36|10|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1ffa0f\\n36|11|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0xbf79\\n36|12|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x2554bb\\n36|13|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1f2ee7\\n36|14|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0xd1155\\n36|15|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1ff6af\\n36|16|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x10fabe\\n36|17|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x2051ca\\n36|18|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x90033\\n36|19|ntdll.dll|LdrpGetProcedureAddress|||0xe6\\n36|20|ntdll.dll|LdrpGetProcedureAddress|||0x18b\\n36|21|ntdll.dll|MD5Final|||0x2bc\\n36|22|ntdll.dll|LdrpGetProcedureAddress|||0x135\\n36|23|snxhk.dll||||0x28b81\\n36|24|ole32.dll|GetNextContextId(_ULARGE_INTEGER &)|||0x28\\n36|25|ole32.dll|IFillLockBytes_FillAppend_Proxy|||0x9dd\\n36|26|ntdll.dll|LdrLoadDll|||0x14a\\n37|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n37|1|ntdll.dll|NtWaitForMultipleObjects|||0xb\\n37|2|kernel32.dll|CreateFileMappingA|||0x85\\n37|3|kernel32.dll|WaitForMultipleObjects|||0x17\\n37|4|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x4e8b6\\n37|5|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x506fc\\n37|6|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x5094f\\n37|7|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x5515\\n37|8|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1ffa0f\\n37|9|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x87c9\\n37|10|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x255497\\n37|11|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1f2c4f\\n37|12|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x8ff2f\\n37|13|ntdll.dll|LdrpGetProcedureAddress|||0xe6\\n37|14|ntdll.dll|LdrpGetProcedureAddress|||0x18b\\n37|15|ntdll.dll|MD5Final|||0x2bc\\n37|16|ntdll.dll|LdrpGetProcedureAddress|||0x135\\n37|17|snxhk.dll||||0x28b81\\n37|18|ole32.dll|GetNextContextId(_ULARGE_INTEGER &)|||0x28\\n37|19|ole32.dll|IFillLockBytes_FillAppend_Proxy|||0x9dd\\n37|20|ntdll.dll|LdrLoadDll|||0x14a\\n38|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n38|1|ntdll.dll|NtWaitForMultipleObjects|||0xb\\n38|2|kernel32.dll|CreateFileMappingA|||0x85\\n38|3|kernel32.dll|WaitForMultipleObjects|||0x17\\n38|4|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x4e8b6\\n38|5|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x506fc\\n38|6|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x5094f\\n38|7|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x5515\\n38|8|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1ffa0f\\n38|9|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x87c9\\n38|10|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x255497\\n38|11|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1f2c4f\\n38|12|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x8ff2f\\n38|13|ntdll.dll|LdrpGetProcedureAddress|||0xe6\\n38|14|ntdll.dll|LdrpGetProcedureAddress|||0x18b\\n38|15|ntdll.dll|MD5Final|||0x2bc\\n38|16|ntdll.dll|LdrpGetProcedureAddress|||0x135\\n38|17|snxhk.dll||||0x28b81\\n38|18|ole32.dll|GetNextContextId(_ULARGE_INTEGER &)|||0x28\\n38|19|ole32.dll|IFillLockBytes_FillAppend_Proxy|||0x9dd\\n38|20|ntdll.dll|LdrLoadDll|||0x14a\\n39|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n39|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n39|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n39|3|kernel32.dll|WaitForSingleObject|||0x11\\n39|4|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x4914e\\n39|5|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1f498a\\n39|6|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x49500\\n39|7|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x5681\\n39|8|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x3f90b\\n39|9|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1f2a07\\n39|10|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1ffa0f\\n39|11|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0xa460\\n39|12|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x2554cb\\n39|13|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1f2f17\\n39|14|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x711de\\n39|15|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x6f298\\n39|16|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x71547\\n39|17|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x1f8890\\n39|18|2aaf317e-9a06-558b-cf88-894fbb0dd11b.dll||||0x8ff0f\\n39|19|ntdll.dll|LdrpGetProcedureAddress|||0xe6\\n39|20|ntdll.dll|LdrpGetProcedureAddress|||0x18b\\n39|21|ntdll.dll|MD5Final|||0x2bc\\n39|22|ntdll.dll|LdrpGetProcedureAddress|||0x135\\n39|23|snxhk.dll||||0x28b81\\n39|24|ole32.dll|GetNextContextId(_ULARGE_INTEGER &)|||0x28\\n39|25|ole32.dll|IFillLockBytes_FillAppend_Proxy|||0x9dd\\n39|26|ntdll.dll|LdrLoadDll|||0x14a\\n40|0|kernel32.dll|BaseThreadStartThunk|||0x0\", \"startedDateTime\": \"2011-03-06 21:14:01.327981\", \"product\": \"Firefox\", \"crashedThread\": 35, \"cpu_info\": \"GenuineIntel family 15 model 4 stepping 9 | 1\", \"install_age\": 567924, \"distributor\": null, \"topmost_filenames\": [\"hg:hg.mozilla.org/mozilla-central:memory/mozalloc/mozalloc_abort.cpp:d322a1c8537e\"], \"id\": 227423740, \"user_comments\": null, \"build_date\": \"2011-02-22 21:00:00.0\", \"uptime\": 291, \"uuid\": \"dabea982-548f-4b71-ae4f-b9ebf2110306\", \"flash_version\": \"[blank]\", \"os_version\": \"5.1.2600 Service Pack 3\", \"distributor_version\": null, \"truncated\": false, \"process_type\": null, \"processor_notes\": \"\", \"hangid\": null, \"version\": \"4.0b12\", \"build\": \"20110222210221\", \"addons_checked\": null, \"app_notes\": \"AdapterVendorID: 1106, AdapterDeviceID: 3344, AdapterDriverVersion: 6.14.10.275\\nxpcom_runtime_abort(###!!! ABORT: Main-thread-only object used off the main thread: file e:/builds/moz2_slave/rel-cen-w32-bld/build/xpcom/base/nsCycleCollector.cpp, line 1195)xpcom_runtime_abort(###!!! ABORT: Main-thread-only object used off the main thread: file e:/builds/moz2_slave/rel-cen-w32-bld/build/xpcom/base/nsCycleCollector.cpp, line 1195)xpcom_runtime_abort(###!!! ABORT: Main-thread-only object used off the main thread: file e:/builds/moz2_slave/rel-cen-w32-bld/build/xpcom/base/nsCycleCollector.cpp, line 1195)xpcom_runtime_abort(###!!! ABORT: Main-thread-only object used off the main thread: file e:/builds/moz2_slave/rel-cen-w32-bld/build/xpcom/base/nsCycleCollector.cpp, line 1195)xpcom_runtime_abort(###!!! ABORT: Main-thread-only object used off the main thread: file e:/builds/moz2_slave/rel-cen-w32-bld/build/xpcom/base/nsCycleCollector.cpp, line 1195)\", \"os_name\": \"Windows NT\", \"last_crash\": 299, \"date_processed\": \"2011-03-06 21:13:18.528463\", \"cpu_name\": \"x86\", \"reason\": \"EXCEPTION_BREAKPOINT\", \"address\": \"0x7d1a39\", \"completeddatetime\": \"2011-03-06 21:14:03.975606\", \"signature\": \"mozalloc_abort(char const* const) | NS_DebugBreak_P | nsCycleCollectingAutoRefCnt::decr(nsISupports*)\", \"addons\": [[\"engine@conduit.com\", \"3.2.5.2\"], [\"{ac6fad42-419e-4f3a-abde-1bc6ce916b7d}\", \"3.2.5.2\"], [\"m3ffxtbr@mywebsearch.com\", \"1.1\"], [\"testpilot@labs.mozilla.com\", \"1.0.6\"], [\"{46551EC9-40F0-4e47-8E18-8E5CF550CFB8}\", \"1.1.1\"], [\"{c5134213-7204-f204-7748-3faf7674a27f}\", \"4.6.7.8\"], [\"{0974848a-b5bc-49f2-9778-307742b4a55d}\", \"3.2.5.2\"], [\"{972ce4c6-7e08-4474-a285-3208198ce6fd}\", \"4.0b12\"]]}" jdata <- fromJSON( x ) checkTrue( is.list( jdata ) ) } test.big <- function() { x <- "{\"client_crash_date\": \"2011-03-03 02:06:41.0\", \"dump\": \"OS|Windows NT|5.1.2600 Service Pack 3\\nCPU|x86|AuthenticAMD family 16 model 6 stepping 2|1\\nCrash|EXCEPTION_ACCESS_VIOLATION_READ|0x9|0\\nModule|sqlite3.dll|3.6.10.0|sqlite3.pdb|33F22CE2B2B54C128F26B1AEB209DB3E1|0x00280000|0x002ebfff|1\\nModule|js3250.dll|4.0.0.0|js3250.pdb|3D2BE64A2A27418AB874AF1FC37FC28F2|0x002f0000|0x003d2fff|0\\nModule|smime3.dll|3.12.3.0|smime3.pdb|C691873CEC8A45CEBB8D577029D6A05C1|0x003e0000|0x003f7fff|0\\nModule|firefox.exe|1.9.1.3483|firefox.pdb|E820A6C3DA3E4D41B4D4856FBE95A9682|0x00400000|0x004defff|0\\nModule|nspr4.dll|4.8.0.0|nspr4.pdb|90B401B223E44E29B52427A96E5030B61|0x004e0000|0x00508fff|0\\nModule|nss3.dll|3.12.3.0|nss3.pdb|417FBFD301594DDBB3B1B0FDD01AD18D1|0x00510000|0x005a9fff|0\\nModule|nssutil3.dll|3.12.3.0|nssutil3.pdb|271849D3653A4011AFF4DD803713F75E1|0x005b0000|0x005c3fff|0\\nModule|plc4.dll|4.8.0.0|plc4.pdb|0466C3D1BA904897B48B818A47271E3D1|0x005d0000|0x005d6fff|0\\nModule|plds4.dll|4.8.0.0|plds4.pdb|ADE9A225ED1E47189DCC30DFB885B9F31|0x005e0000|0x005e6fff|0\\nModule|ssl3.dll|3.12.3.0|ssl3.pdb|D2CBA6C4FEBA43069A78E69B1434DB131|0x005f0000|0x0060ffff|0\\nModule|xpcom.dll|1.9.1.3483|xpcom.pdb|2CD83B094C064BA4B1936C48EC3FA9E62|0x00610000|0x00616fff|0\\nModule|UnlockerHook.dll||||0x012c0000|0x012c3fff|0\\nModule|PowerMenuHook.dll|1.5.1.0|||0x012d0000|0x012e2fff|0\\nModule|browserdirprovider.dll|1.9.1.3483|browserdirprovider.pdb|C3E953EDEF68402183B21895E689408D2|0x01340000|0x01347fff|0\\nModule|idmmzcc.dll|5.17.3.0|||0x01450000|0x01480fff|0\\nModule|normaliz.dll|6.0.5441.0|normaliz.pdb|D0658E322B2D4DDCA57FB9C9715C6CAD1|0x01490000|0x01498fff|0\\nModule|urlmon.dll|8.0.6001.22867|urlmon.pdb|04FFFD62B65746BD856B698C3822F4652|0x014a0000|0x015d0fff|0\\nModule|GoogleDesktopMozilla.dll||GoogleDesktopMozilla.pdb|AEB53B67E2FF42E8A4ED5107357E98347|0x01950000|0x0196efff|0\\nModule|brwsrcmp.dll|1.9.1.3483|brwsrcmp.pdb|A5B4105204D34EF4BCED190336D634872|0x02200000|0x02223fff|0\\nModule|xpsp2res.dll|5.1.2600.5512|||0x02330000|0x02689fff|0\\nModule|xul.dll|1.9.1.3483|xul.pdb|9FCED407A8D3411DBF5E80A72845BD062|0x10000000|0x10a59fff|0\\nModule|wininet.dll|8.0.6001.22873|wininet.pdb|2ED0AC45A8584A6095BFE16577D154332|0x3d930000|0x3da15fff|0\\nModule|iertutil.dll|8.0.6001.22867|iertutil.pdb|A6E8574FA7054FDCA22D42F9946ADCCC2|0x3dfd0000|0x3e1b7fff|0\\nModule|dbghelp.dll|5.1.2600.5512|dbghelp.pdb|7FA1C63A9BF54470BCA31E35A94F49971|0x59a60000|0x59b00fff|0\\nModule|uxtheme.dll|6.0.2900.5512|uxtheme.pdb|E99E16308F094767B1F07FB5C3E5E2462|0x5ad70000|0x5ada7fff|0\\nModule|GoogleDesktopAPI2.dll||GoogleDesktopAPI2.pdb|16952BAF76A047D7A83483F202EE6A6A8|0x60000000|0x6001dfff|0\\nModule|GoogleDesktopResources_en.dll||GoogleDesktopResources_en.pdb|5158D620219E4E779E02BC472BD772BE2|0x62000000|0x62031fff|0\\nModule|lpk.dll|5.1.2600.5512|lpk.pdb|4B6570DF2CFF45AAB60E416993385EAC1|0x629c0000|0x629c8fff|0\\nModule|hnetcfg.dll|5.1.2600.5589|HNetCfg.pdb|C441D43BD4354A8E9F22229506BCBE591|0x662b0000|0x66307fff|0\\nModule|mswsock.dll|5.1.2600.5649|mswsock.pdb|93FEC2ABF4254F5AA4EBFE33B2DEBAD62|0x71a50000|0x71a8efff|0\\nModule|wshtcpip.dll|5.1.2600.5512|wshtcpip.pdb|DE2E52603FFB406D9052C8D884A1AD722|0x71a90000|0x71a97fff|0\\nModule|ws2help.dll|5.1.2600.5512|ws2help.pdb|6049CF5877C54E2AB512ABC1B4B2E7992|0x71aa0000|0x71aa7fff|0\\nModule|ws2_32.dll|5.1.2600.5512|ws2_32.pdb|A7605F8695A34329B38DDB8421A004CA2|0x71ab0000|0x71ac6fff|0\\nModule|wsock32.dll|5.1.2600.5512|wsock32.pdb|2B38FE8F84144DACB8A4FD07C05E49FC2|0x71ad0000|0x71ad8fff|0\\nModule|winspool.drv|5.1.2600.5512|winspool.pdb|5199B63B39904A05A517CEE5158071522|0x73000000|0x73025fff|0\\nModule|t2embed.dll|5.1.2600.5830|t2embed.pdb|82C3ABFC4D2349E0A74C50B18FC0D8EA1|0x73ce0000|0x73d00fff|0\\nModule|lz32.dll|5.1.2600.0|lz32.pdb|3B7D84BD1|0x73dc0000|0x73dc2fff|0\\nModule|MSCTF.dll|5.1.2600.5655|msctf.pdb|3DB44EF7B1F64554AA80C5F5116A5DFE2|0x74720000|0x7476bfff|0\\nModule|usp10.dll|1.420.2600.5512|usp10.pdb|0F289BC0C9A94139BC1C31EDEDBF52311|0x74d90000|0x74dfafff|0\\nModule|MSCTFIME.IME|5.1.2600.5768|msctfime.pdb|3C615F3A72FC4192A60AA2A1F52449AC1|0x755c0000|0x755edfff|0\\nModule|msimg32.dll|5.1.2600.5512|msimg32.pdb|D2E18526D8234F4BB5A85DE12E71DE812|0x76380000|0x76384fff|0\\nModule|imm32.dll|5.1.2600.5512|imm32.pdb|F7A5B5DB13324153B57AAF340C77EA512|0x76390000|0x763acfff|0\\nModule|comdlg32.dll|6.0.2900.5512|comdlg32.pdb|026A6FF770FD4E6186ADBBE96DFFA99C2|0x763b0000|0x763f8fff|0\\nModule|winmm.dll|5.1.2600.5512|winmm.pdb|90FC96D5AD8440A2B14855895BD92ED62|0x76b40000|0x76b6cfff|0\\nModule|psapi.dll|5.1.2600.5512|psapi.pdb|B9875A55C874489384EA8FB805322C312|0x76bf0000|0x76bfafff|0\\nModule|iphlpapi.dll|5.1.2600.5512|iphlpapi.pdb|9B09F073003F4CA48F9980B3C091448F2|0x76d60000|0x76d78fff|0\\nModule|dnsapi.dll|5.1.2600.5649|dnsapi.pdb|32D68E409B0B4F58968A103CB7CB8CA92|0x76f20000|0x76f46fff|0\\nModule|wldap32.dll|5.1.2600.5512|wldap32.pdb|AC04BCF6FF294FCEAC8B8D937CBA3A172|0x76f60000|0x76f8bfff|0\\nModule|winrnr.dll|5.1.2600.5512|winrnr.pdb|9FE1A4669B69400FAC821A4367AA9CC52|0x76fb0000|0x76fb7fff|0\\nModule|clbcatq.dll|2001.12.4414.700|clbcatq.pdb|8AE9C54730824764AAF39EA69F8D87582|0x76fd0000|0x7704efff|0\\nModule|comres.dll|2001.12.4414.700|COMRes.pdb|A02453A3EB42413FBFF95326893E977Df|0x77050000|0x77114fff|0\\nModule|oleaut32.dll|5.1.2600.5512|oleaut32.pdb|F2A209009B694EFCAD1A6CE9D992EBC12|0x77120000|0x771aafff|0\\nModule|comctl32.dll|6.0.2900.5512|MicrosoftWindowsCommon-Controls-6.0.2600.5512-comctl32.pdb|505057971C40416FB39FED1D39BED0571|0x773d0000|0x774d2fff|0\\nModule|ole32.dll|5.1.2600.5685|ole32.pdb|9A4C05DDE0EC40CBBB843A4AD8FEF3C42|0x774e0000|0x7761dfff|0\\nModule|setupapi.dll|5.1.2600.5603|setupapi.pdb|D4ED459F85A948E7A94E123D65DFCC332|0x77920000|0x77a12fff|0\\nModule|version.dll|5.1.2600.5512|version.pdb|EA3D1BD3FE65475C8449C8D8B00722962|0x77c00000|0x77c07fff|0\\nModule|msvcrt.dll|7.0.2600.5701|msvcrt.pdb|F46BE85D442A476EAADBC8CC2B727C681|0x77c10000|0x77c67fff|0\\nModule|advapi32.dll|5.1.2600.5755|advapi32.pdb|8F800AAE525541239E4110B8821F5ECD2|0x77dd0000|0x77e6afff|0\\nModule|rpcrt4.dll|5.1.2600.5795|rpcrt4.pdb|759EF1C510534614A5537861C559C4282|0x77e70000|0x77f01fff|0\\nModule|gdi32.dll|5.1.2600.5698|gdi32.pdb|005002194FA345B5957493744A01376E2|0x77f10000|0x77f58fff|0\\nModule|shlwapi.dll|6.0.2900.5512|shlwapi.pdb|8519E3403447478884CFFE7F1A91BAE02|0x77f60000|0x77fd5fff|0\\nModule|secur32.dll|5.1.2600.5753|secur32.pdb|F6CC06B49B764C5AA7C4C320ECB139F42|0x77fe0000|0x77ff0fff|0\\nModule|mozcrt19.dll|8.0.0.0|mozcrt19.pdb|06D6AEABD62C4346BF4F11E4D3BF37B61|0x78130000|0x781e0fff|0\\nModule|kernel32.dll|5.1.2600.5781|kernel32.pdb|F3F783A50DA64DD2AA9357ED6DAF9A252|0x7c800000|0x7c8f5fff|0\\nModule|ntdll.dll|5.1.2600.5755|ntdll.pdb|99192024C5EB4830AC602195086637082|0x7c900000|0x7c9b1fff|0\\nModule|shell32.dll|6.0.2900.5672|shell32.pdb|69B3829BB6884926A5B97BF04E812C6B2|0x7c9c0000|0x7e0f5fff|0\\nModule|user32.dll|5.1.2600.5512|user32.pdb|D18A41B74E7F458CAAAC1847E2D8BF022|0x7e410000|0x7e4aefff|0\\n\\n0|0|GoogleDesktopMozilla.dll||||0x5512\\n0|1|GoogleDesktopMozilla.dll||||0x4b7e\\n0|2|xul.dll||||0x30b591\\n0|3|xul.dll|CallPeekFunc|hg:hg.mozilla.org/releases/mozilla-1.9.1:netwerk/base/src/nsInputStreamPump.cpp:c6f51c76fb5d|125|0x10\\n0|4|xul.dll|nsPipeInputStream::ReadSegments(unsigned int (*)(nsIInputStream *,void *,char const *,unsigned int,unsigned int,unsigned int *),void *,unsigned int,unsigned int *)|hg:hg.mozilla.org/releases/mozilla-1.9.1:xpcom/io/nsPipe3.cpp:c6f51c76fb5d|799|0x1c\\n0|5|xul.dll|nsFileChannel::QueryInterface(nsID const &,void * *)|hg:hg.mozilla.org/releases/mozilla-1.9.1:netwerk/protocol/file/src/nsFileChannel.cpp:c6f51c76fb5d|400|0x79\\n0|6|xul.dll|nsBaseChannel::GetStatus(unsigned int *)|hg:hg.mozilla.org/releases/mozilla-1.9.1:netwerk/base/src/nsBaseChannel.cpp:c6f51c76fb5d|323|0xe\\n0|7|xul.dll|nsBaseChannel::OnStartRequest(nsIRequest *,nsISupports *)|hg:hg.mozilla.org/releases/mozilla-1.9.1:netwerk/base/src/nsBaseChannel.cpp:c6f51c76fb5d|665|0x23\\n0|8|xul.dll|nsInputStreamPump::OnStateStart()|hg:hg.mozilla.org/releases/mozilla-1.9.1:netwerk/base/src/nsInputStreamPump.cpp:c6f51c76fb5d|439|0x1c\\n0|9|xul.dll|nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream *)|hg:hg.mozilla.org/releases/mozilla-1.9.1:netwerk/base/src/nsInputStreamPump.cpp:c6f51c76fb5d|395|0x7\\n0|10|xul.dll|nsInputStreamReadyEvent::Run()|hg:hg.mozilla.org/releases/mozilla-1.9.1:xpcom/io/nsStreamUtils.cpp:c6f51c76fb5d|111|0x8\\n0|11|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/releases/mozilla-1.9.1:xpcom/threads/nsThread.cpp:c6f51c76fb5d|510|0x13\\n0|12|xul.dll|nsBaseAppShell::Run()|hg:hg.mozilla.org/releases/mozilla-1.9.1:widget/src/xpwidgets/nsBaseAppShell.cpp:c6f51c76fb5d|170|0x23\\n0|13|xul.dll|nsAppStartup::Run()|hg:hg.mozilla.org/releases/mozilla-1.9.1:toolkit/components/startup/src/nsAppStartup.cpp:c6f51c76fb5d|193|0xc\\n0|14|nspr4.dll||||0xbaff\\n0|15|firefox.exe|wmain|hg:hg.mozilla.org/releases/mozilla-1.9.1:toolkit/xre/nsWindowsWMain.cpp:c6f51c76fb5d|110|0xe5\\n0|16|firefox.exe|__tmainCRTStartup|hg:hg.mozilla.org/releases/mozilla-1.9.1:obj-firefox/memory/jemalloc/src/crtexe.c:c6f51c76fb5d|591|0x18\\n0|17|kernel32.dll|BaseProcessStart|||0x22\\n1|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n1|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n1|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n1|3|kernel32.dll|WaitForSingleObject|||0x11\\n1|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/md/windows/w95cv.c:c6f51c76fb5d|280|0xd\\n1|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/threads/combined/prucv.c:c6f51c76fb5d|204|0x27\\n1|6|nspr4.dll|PR_WaitCondVar|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/threads/combined/prucv.c:c6f51c76fb5d|547|0xc\\n1|7|xul.dll|TimerThread::Run()|hg:hg.mozilla.org/releases/mozilla-1.9.1:xpcom/threads/TimerThread.cpp:c6f51c76fb5d|345|0x12\\n1|8|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/releases/mozilla-1.9.1:xpcom/threads/nsThread.cpp:c6f51c76fb5d|510|0x13\\n1|9|xul.dll|nsThread::ThreadFunc(void *)|hg:hg.mozilla.org/releases/mozilla-1.9.1:xpcom/threads/nsThread.cpp:c6f51c76fb5d|254|0xb\\n1|10|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/threads/combined/pruthr.c:c6f51c76fb5d|426|0x8\\n1|11|nspr4.dll|pr_root|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/md/windows/w95thred.c:c6f51c76fb5d|122|0xc\\n1|12|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/releases/mozilla-1.9.1:obj-firefox/memory/jemalloc/src/threadex.c:c6f51c76fb5d|348|0x8\\n1|13|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/releases/mozilla-1.9.1:obj-firefox/memory/jemalloc/src/threadex.c:c6f51c76fb5d|326|0x4\\n1|14|kernel32.dll|BaseThreadStart|||0x36\\n2|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n2|1|ntdll.dll|NtWaitForMultipleObjects|||0xb\\n2|2|kernel32.dll|CreateFileMappingA|||0x85\\n2|3|advapi32.dll|WmipEventPump|||0x1a6\\n2|4|kernel32.dll|BaseThreadStart|||0x36\\n3|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n3|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n3|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n3|3|kernel32.dll|WaitForSingleObject|||0x11\\n3|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/md/windows/w95cv.c:c6f51c76fb5d|280|0xd\\n3|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/threads/combined/prucv.c:c6f51c76fb5d|204|0x27\\n3|6|nspr4.dll|PR_WaitCondVar|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/threads/combined/prucv.c:c6f51c76fb5d|547|0xc\\n3|7|xul.dll|XPCJSRuntime::WatchdogMain(void *)|hg:hg.mozilla.org/releases/mozilla-1.9.1:js/src/xpconnect/src/xpcjsruntime.cpp:c6f51c76fb5d|823|0x12\\n3|8|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/threads/combined/pruthr.c:c6f51c76fb5d|426|0x8\\n3|9|msvcrt.dll|_fptrap|||0xa76e\\n3|10|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/releases/mozilla-1.9.1:obj-firefox/memory/jemalloc/src/threadex.c:c6f51c76fb5d|326|0x4\\n3|11|kernel32.dll|BaseThreadStart|||0x36\\n4|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n4|1|ntdll.dll|ZwRemoveIoCompletion|||0xb\\n4|2|mswsock.dll|SockAsyncThread|||0x59\\n4|3|kernel32.dll|BaseThreadStart|||0x36\\n5|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n5|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n5|2|mswsock.dll|SockWaitForSingleObject|||0x39\\n5|3|mswsock.dll|SockReleaseRwLockExclusive|||0x40\\n5|4|ws2_32.dll|select|||0xa6\\n5|5|nspr4.dll|_PR_MD_PR_POLL|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/md/windows/w32poll.c:c6f51c76fb5d|279|0xe\\n5|6|nspr4.dll||||0xca1f\\n6|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n6|1|ntdll.dll|NtWaitForMultipleObjects|||0xb\\n6|2|kernel32.dll|CreateFileMappingA|||0x85\\n6|3|kernel32.dll|WaitForMultipleObjects|||0x17\\n6|4|xul.dll|nsNotifyAddrListener::Run()|hg:hg.mozilla.org/releases/mozilla-1.9.1:netwerk/system/win32/nsNotifyAddrListener.cpp:c6f51c76fb5d|185|0xe\\n6|5|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/releases/mozilla-1.9.1:xpcom/threads/nsThread.cpp:c6f51c76fb5d|510|0x13\\n6|6|xul.dll|nsThread::ThreadFunc(void *)|hg:hg.mozilla.org/releases/mozilla-1.9.1:xpcom/threads/nsThread.cpp:c6f51c76fb5d|254|0xb\\n6|7|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/threads/combined/pruthr.c:c6f51c76fb5d|426|0x8\\n6|8|nspr4.dll|pr_root|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/md/windows/w95thred.c:c6f51c76fb5d|122|0xc\\n6|9|mozcrt19.dll|_callthreadstartex|hg:hg.mozilla.org/releases/mozilla-1.9.1:obj-firefox/memory/jemalloc/src/threadex.c:c6f51c76fb5d|348|0x8\\n6|10|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/releases/mozilla-1.9.1:obj-firefox/memory/jemalloc/src/threadex.c:c6f51c76fb5d|326|0x4\\n6|11|kernel32.dll|BaseThreadStart|||0x36\\n7|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n7|1|user32.dll|NtUserGetMessage|||0xb\\n7|2|GoogleDesktopMozilla.dll||||0x5cbe\\n7|3|GoogleDesktopMozilla.dll||||0xb87a\\n7|4|kernel32.dll|BaseThreadStart|||0x36\\n8|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n8|1|ntdll.dll|ZwWaitForSingleObject|||0xb\\n8|2|kernel32.dll|WaitForSingleObjectEx|||0x8a\\n8|3|kernel32.dll|WaitForSingleObject|||0x11\\n8|4|nspr4.dll|_PR_MD_WAIT_CV|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/md/windows/w95cv.c:c6f51c76fb5d|280|0xd\\n8|5|nspr4.dll|_PR_WaitCondVar|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/threads/combined/prucv.c:c6f51c76fb5d|204|0x27\\n8|6|nspr4.dll|PR_Wait|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/threads/prmon.c:c6f51c76fb5d|184|0x19\\n8|7|xul.dll|nsAutoMonitor::Wait(unsigned int)|hg:hg.mozilla.org/releases/mozilla-1.9.1:obj-firefox/dist/include/xpcom/nsAutoLock.h:c6f51c76fb5d|340|0xb\\n8|8|xul.dll|nsThreadPool::Run()|hg:hg.mozilla.org/releases/mozilla-1.9.1:xpcom/threads/nsThreadPool.cpp:c6f51c76fb5d|210|0xd\\n8|9|xul.dll|nsThread::ProcessNextEvent(int,int *)|hg:hg.mozilla.org/releases/mozilla-1.9.1:xpcom/threads/nsThread.cpp:c6f51c76fb5d|510|0x13\\n8|10|xul.dll|nsThread::ThreadFunc(void *)|hg:hg.mozilla.org/releases/mozilla-1.9.1:xpcom/threads/nsThread.cpp:c6f51c76fb5d|254|0xb\\n8|11|nspr4.dll|_PR_NativeRunThread|hg:hg.mozilla.org/releases/mozilla-1.9.1:nsprpub/pr/src/threads/combined/pruthr.c:c6f51c76fb5d|426|0x8\\n8|12|js3250.dll||||0x4a9f\\n8|13|mozcrt19.dll|_threadstartex|hg:hg.mozilla.org/releases/mozilla-1.9.1:obj-firefox/memory/jemalloc/src/threadex.c:c6f51c76fb5d|326|0x4\\n8|14|kernel32.dll|BaseThreadStart|||0x36\\n9|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n9|1|ntdll.dll|NtReplyWaitReceivePortEx|||0xb\\n9|2|rpcrt4.dll|RpcpPurgeEEInfoFromThreadIfNecessary(THREAD *)|||0x48\\n9|3|rpcrt4.dll|RecvLotsaCallsWrapper(LRPC_ADDRESS *)|||0xc\\n9|4|rpcrt4.dll|BaseCachedThreadRoutine(CACHED_THREAD *)|||0x52\\n9|5|rpcrt4.dll|ThreadStartRoutine(THREAD *)|||0x19\\n9|6|kernel32.dll|BaseThreadStart|||0x36\\n10|0|ntdll.dll|KiFastSystemCallRet|||0x0\\n10|1|ntdll.dll|ZwDelayExecution|||0xb\\n10|2|kernel32.dll|SleepEx|||0x50\\n10|3|kernel32.dll|Sleep|||0xe\\n10|4|ole32.dll|CROIDTable::WorkerThreadLoop(void *)|||0x13\\n10|5|ole32.dll|CRpcThread::WorkerLoop()|||0x1d\\n10|6|||||0x774dffff\\n10|7|kernel32.dll|BaseThreadStart|||0x36\", \"startedDateTime\": \"2011-03-02 18:07:40.147016\", \"product\": \"Firefox\", \"crashedThread\": 0, \"cpu_info\": \"AuthenticAMD family 16 model 6 stepping 2 | 1\", \"install_age\": 6246, \"distributor\": null, \"topmost_filenames\": [\"hg:hg.mozilla.org/releases/mozilla-1.9.1:netwerk/base/src/nsInputStreamPump.cpp:c6f51c76fb5d\"], \"id\": 225856774, \"user_comments\": \"\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n05\\r\\n\\r\\n\\r\\n.\\r\\n+\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\\r\\n\", \"build_date\": \"2009-07-15 09:00:00.0\", \"uptime\": 1, \"uuid\": \"48b5ddb1-6029-4375-84b0-5f8ab2110302\", \"flash_version\": \"[blank]\", \"os_version\": \"5.1.2600 Service Pack 3\", \"distributor_version\": null, \"truncated\": false, \"process_type\": null, \"processor_notes\": \"\", \"hangid\": null, \"version\": \"3.5.1\", \"build\": \"20090715094852\", \"addons_checked\": null, \"app_notes\": null, \"os_name\": \"Windows NT\", \"last_crash\": 1, \"date_processed\": \"2011-03-02 18:07:17.892535\", \"cpu_name\": \"x86\", \"reason\": \"EXCEPTION_ACCESS_VIOLATION_READ\", \"address\": \"0x9\", \"completeddatetime\": \"2011-03-02 18:07:42.889052\", \"signature\": \"GoogleDesktopMozilla.dll@0x5512\", \"addons\": [[\"jqs@sun.com\", \"1.0\"], [\"mozilla_cc@internetdownloadmanager.com\", \"6.4\"], [\"{972ce4c6-7e08-4474-a285-3208198ce6fd}\", \"3.5.1\"]]}" jdata <- fromJSON( x ) checkTrue( is.list( jdata ) ) }rjson/inst/unittests/test.tojson.r0000644000176200001440000000417713646044300017112 0ustar liggesusers.setUp <- function() {} .tearDown <- function() {} test.tojson <- function() { x <- 15433 j <- toJSON( x, "C" ) checkIdentical( j, "15433" ) x <- 15.543 j <- toJSON( x, "C" ) checkIdentical( j, "15.543" ) x <- TRUE j <- toJSON( x, "C" ) checkIdentical( j, "true" ) x <- FALSE j <- toJSON( x, "C" ) checkIdentical( j, "false" ) x <- NULL j <- toJSON( x, "C" ) checkIdentical( j, "null" ) #Test strings x <- "hello" j <- toJSON( x, "C" ) checkIdentical( j, "\"hello\"" ) x <- "hel\"lo" j <- toJSON( x, "C" ) checkIdentical( j, "\"hel\\\"lo\"" ) x <- "hel\n" j <- toJSON( x, "C" ) checkIdentical( j, "\"hel\\n\"" ) x <- "\n\r\t" j <- toJSON( x, "C" ) checkIdentical( j, "\"\\n\\r\\t\"" ) x <- "" j <- toJSON( x, "C" ) checkIdentical( j, "\"\"" ) x <- "\u0041\u006c\u0065\u0078\u002B" j <- toJSON( x, "C" ) checkIdentical( j, "\"Alex+\"" ) x <- "\u018E" j <- toJSON( x, "C" ) checkIdentical( j, "\"\\u018e\"" ) x <- "\u3020" j <- toJSON( x, "C" ) checkIdentical( j, "\"\\u3020\"" ) #test arrays x <- c(10, 50, 30) j <- toJSON( x, "C" ) checkIdentical( j, "[10,50,30]" ) x <- list(10, 50, 30) j <- toJSON( x, "C" ) checkIdentical( j, "[10,50,30]" ) x <- list(10, 50, TRUE) j <- toJSON( x, "C" ) checkIdentical( j, "[10,50,true]" ) x <- list(10, 50, list()) j <- toJSON( x, "C" ) checkIdentical( j, "[10,50,[]]" ) x <- list(10, 50, NULL) j <- toJSON( x, "C" ) checkIdentical( j, "[10,50,null]" ) x <- list() j <- toJSON( x, "C" ) checkIdentical( j, "[]" ) x <- c(T,T,F,F,T,F) j <- toJSON( x, "C" ) checkIdentical( j, "[true,true,false,false,true,false]" ) #test dicts x <- list(key="value") j <- toJSON( x, "C" ) checkIdentical( j, "{\"key\":\"value\"}" ) x <- c(key="value") j <- toJSON( x, "C" ) checkIdentical( j, "{\"key\":\"value\"}" ) x <- c(key=TRUE, car=FALSE) j <- toJSON( x, "C" ) checkIdentical( j, "{\"key\":true,\"car\":false}" ) x <- list(key=TRUE, car=FALSE, apple=c(10.5, 28)) j <- toJSON( x, "C" ) checkIdentical( j, "{\"key\":true,\"car\":false,\"apple\":[10.5,28]}" ) x <- c(a=T,b=F) j <- toJSON( x, "C" ) checkIdentical( j, "{\"a\":true,\"b\":false}" ) } rjson/inst/unittests/test.strings.r0000644000176200001440000000106113646044300017254 0ustar liggesusers.setUp <- function() {} .tearDown <- function() {} test.strings <- function() { json <- "\"\"" x <- fromJSON( json ) checkIdentical( x, "" ) json <- "\"hello world\"" x <- fromJSON( json ) checkIdentical( x, "hello world" ) json <- "\"hello\\ttab\"" x <- fromJSON( json ) checkIdentical( x, "hello\ttab" ) json <- "\"hello\\\"quote\"" x <- fromJSON( json ) checkIdentical( x, "hello\"quote" ) #really long string s <- paste( 1:100000, collapse = "-" ) json <- paste("\"", s, "\"", sep="" ) x <- fromJSON( json ) checkIdentical( x, s ) } rjson/inst/unittests/test.crash.r0000644000176200001440000000056713646044300016675 0ustar liggesusers test.issue24 <- function() { # json unicode is escaped as \u018E; not uppercase \U bad_json <- "\"\\U018E\"" x <- try( fromJSON( bad_json ), silent = TRUE ) checkTrue( any( class( x ) == "try-error" ) ) # TODO validate error message is ok: should contain "" } rjson/inst/unittests/test.array.r0000644000176200001440000000151513646044300016705 0ustar liggesusers.setUp <- function() {} .tearDown <- function() {} test.array <- function() { json <- "[]" x <- fromJSON( json ) checkIdentical( x, list() ) failing_json <- c( "[", "[12313", "[132,", "[132,1", "[1,5,4,3,", "[1,3}" ) for( bad_json in failing_json ) { x <- try( fromJSON( bad_json ), silent = TRUE ) checkTrue( any( class( x ) == "try-error" ) ) } json <- "[1]" x <- fromJSON( json ) checkIdentical( x, 1 ) json <- "[1,5,200]" x <- fromJSON( json ) checkIdentical( x, c(1,5,200) ) #multiple types are saved as a list json <- "[1,5,\"hello\"]" x <- fromJSON( json ) checkIdentical( x, list(1,5,"hello") ) ##test arrays with arrays #json <- "[[[]],[]]" #x <- fromJSON( json ) #checkIdentical( x, list( list(list()), list() ) ) json <- "[null,[]]" x <- fromJSON( json ) checkIdentical( x, list( NULL, list() ) ) } rjson/inst/unittests/runtests.r0000644000176200001440000000035013646044300016474 0ustar liggesuserslibrary( rjson ) library( RUnit ) path <- system.file( "unittests", package="rjson" ) test.suite <- defineTestSuite( "json unittests", dirs = path, testFileRegexp = "^test\\..*\\.[rR]$" ) runTestSuite( test.suite, verbose = 100 ) rjson/inst/unittests/test.number.r0000644000176200001440000000151713646044300017061 0ustar liggesusers.setUp <- function() {} .tearDown <- function() {} test.number <- function() { json <- "0" x <- fromJSON( json ) checkIdentical( x, 0 ) json <- "-0" x <- fromJSON( json ) checkIdentical( x, 0 ) json <- "15.05" x <- fromJSON( json ) checkIdentical( x, 15.05 ) json <- "-10.3" x <- fromJSON( json ) checkIdentical( x, -10.3 ) json <- "-0.3" x <- fromJSON( json ) checkIdentical( x, -0.3 ) json <- "0.3e3" x <- fromJSON( json ) checkIdentical( x, 300 ) json <- "0.2e+4" x <- fromJSON( json ) checkIdentical( x, 2000 ) json <- "0.1e-4" x <- fromJSON( json ) checkIdentical( x, 0.00001 ) # TODO check for invalid entries like 0.1e-4.5? failing_json <- c( ".3", "-.3", "0.1e" ) for( bad_json in failing_json ) { x <- try( fromJSON( bad_json ), silent = TRUE ) checkTrue( any( class( x ) == "try-error" ) ) } } rjson/inst/unittests/test.factors.r0000644000176200001440000000032413646044300017225 0ustar liggesusers.setUp <- function() {} .tearDown <- function() {} test.factors <- function() { x <- as.factor(c("abc", "abc", "dog", "abc")) json <- toJSON( x ) checkIdentical( json, "[\"abc\",\"abc\",\"dog\",\"abc\"]" ) } rjson/inst/unittests/test.twitter.r0000644000176200001440000002133613646044300017274 0ustar liggesusers test.twitter <- function() { x <- "{\"results\":[{\"profile_image_url\":\"http://a1.twimg.com/profile_images/904661361/IMG00034-20100515-1550_normal.jpg\",\"created_at\":\"Wed, 04 Aug 2010 01:45:21 +0000\",\"from_user\":\"YOtwittaDADDY\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":null,\"text\":\"#random no basic bitch is safe on twitter! If I dont get you and tear you apart, @heartless_dex or @chefhomeboyjd will\",\"id\":20267740998,\"from_user_id\":108000717,\"geo\":null,\"iso_language_code\":\"en\",\"source\":\"<a href="http://mobile.twitter.com" rel="nofollow">Mobile Web</a>\"},{\"profile_image_url\":\"http://a2.twimg.com/profile_images/839850446/n835436_43297164_3982_normal.jpg\",\"created_at\":\"Wed, 04 Aug 2010 01:45:20 +0000\",\"from_user\":\"vmsweet123\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":null,\"text\":\"RT @richard_solo: Giveaway thru: 8/09. Win RichardSolo Noise Canceling Headphones. Follow @Richard_Solo & retweet http://bit.ly/bD8ezA\",\"id\":20267739854,\"from_user_id\":12289632,\"geo\":null,\"iso_language_code\":\"en\",\"source\":\"<a href="http://twitter.com/">web</a>\"},{\"profile_image_url\":\"http://a3.twimg.com/profile_images/430611695/sm_profile_square_normal.jpg\",\"created_at\":\"Wed, 04 Aug 2010 01:45:20 +0000\",\"from_user\":\"ScottMcLemore\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":85038,\"text\":\"@alevin Thanks also for all the insight tonight! Trying to DM you but it says you're not following me. What's your other twitter name?\",\"id\":20267739573,\"from_user_id\":2032996,\"to_user\":\"alevin\",\"geo\":null,\"iso_language_code\":\"en\",\"source\":\"<a href="http://www.tweetdeck.com/" rel="nofollow">TweetDeck</a>\"},{\"profile_image_url\":\"http://a0.twimg.com/profile_images/1083435260/black_rock_ramona_normal.png\",\"created_at\":\"Wed, 04 Aug 2010 01:45:18 +0000\",\"from_user\":\"zetacoes\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":70577019,\"text\":\"@xjazzy13 http://twitter.com/zetacoes/status/20254842627\",\"id\":20267738141,\"from_user_id\":1876460,\"to_user\":\"xJazzy13\",\"geo\":null,\"source\":\"<a href="http://www.echofon.com/" rel="nofollow">Echofon</a>\"},{\"profile_image_url\":\"http://a1.twimg.com/profile_images/350332457/110542_332748125_normal.jpg\",\"created_at\":\"Wed, 04 Aug 2010 01:45:18 +0000\",\"from_user\":\"pepotan\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":null,\"text\":\"\\u30de\\u30af\\u30c9\\u3082\\u3001twitter\\uff0b\\u30d6\\u30e9\\u30a6\\u30b6\\u30b2\\u30fc\\u3067\\u3001\\u30d7\\u30ed\\u30e2\\u3002 \\u30b3\\u30f3\\u30c6\\u30f3\\u30c4\\u306e\\u5185\\u5bb9\\u306f\\u3044\\u307e\\u3044\\u3061\\u3060\\u3051\\u3069\\u3001\\u5e83\\u544a\\u4ee3\\u7406\\u5e97\\u3068\\u5236\\u4f5c\\u4f1a\\u793e\\u304c\\u5132\\u304b\\u308b\\u4ed5\\u7d44\\u307f\\uff57 http://bit.ly/dtfwgs #McD_ckn\",\"id\":20267737693,\"from_user_id\":7864312,\"geo\":null,\"iso_language_code\":\"ja\",\"source\":\"<a href="http://twitter.com/">web</a>\"},{\"profile_image_url\":\"http://a3.twimg.com/profile_images/946831163/113082922_normal.jpg\",\"created_at\":\"Wed, 04 Aug 2010 01:45:18 +0000\",\"from_user\":\"d_davidshi\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":null,\"text\":\"HIT - HOW DO YOU GET 100 FREE TWITTER FOLLOWERS? http://tinyurl.com/32n9eda\",\"id\":20267737116,\"from_user_id\":82204650,\"geo\":null,\"iso_language_code\":\"en\",\"source\":\"<a href="http://dev.twitter.com/" rel="nofollow">API</a>\"},{\"profile_image_url\":\"http://a3.twimg.com/profile_images/387119699/Picture_or_Video_002_normal.jpg\",\"created_at\":\"Wed, 04 Aug 2010 01:45:17 +0000\",\"from_user\":\"aestrap\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":null,\"text\":\"Whoa! The twitter site changed on my phone.\",\"id\":20267736765,\"from_user_id\":2258787,\"geo\":null,\"iso_language_code\":\"en\",\"source\":\"<a href="http://mobile.twitter.com" rel="nofollow">Mobile Web</a>\"},{\"profile_image_url\":\"http://a1.twimg.com/profile_images/1070967993/J_normal.jpg\",\"created_at\":\"Wed, 04 Aug 2010 01:45:17 +0000\",\"from_user\":\"jinnli\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":2408767,\"text\":\"@chrisoul \\u6628\\u5929\\u4e0a\\u6d77\\u65b9\\u9762\\u6765\\u62a5\\uff0cTwitter.com \\u7684\\u57df\\u540d\\u4e5f\\u89e3\\u5c01\\u4e86\\uff08\\u4f46\\u662f\\u6709\\u5927\\u90e8\\u5206IP\\u6254\\u5728\\u5c01\\uff09\\u3002\",\"id\":20267736571,\"from_user_id\":3150412,\"to_user\":\"chrisoul\",\"geo\":null,\"iso_language_code\":\"zh\",\"source\":\"<a href="http://twitter.com/">web</a>\"},{\"profile_image_url\":\"http://a1.twimg.com/profile_images/1077123381/20100714_000933_140_normal.gif\",\"created_at\":\"Wed, 04 Aug 2010 01:45:16 +0000\",\"from_user\":\"keshasuja\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":null,\"text\":\"RT se Raul Gil acaba de visitar seu twitter - "Twitter is over capacity." - Minha baleia \\u00e9 MACHO (:\",\"id\":20267735081,\"from_user_id\":103469135,\"geo\":null,\"iso_language_code\":\"en\",\"source\":\"<a href="http://twitter.com/">web</a>\"},{\"profile_image_url\":\"http://a0.twimg.com/profile_images/1094336724/twitter_icon_from_annie_normal.jpg\",\"created_at\":\"Wed, 04 Aug 2010 01:45:13 +0000\",\"from_user\":\"ColtChambers\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":108642403,\"text\":\"@shawnmock132 they dont have twitter\",\"id\":20267732425,\"from_user_id\":34795175,\"to_user\":\"shawnmock132\",\"geo\":null,\"iso_language_code\":\"en\",\"source\":\"<a href="http://twitter.com/">web</a>\"},{\"profile_image_url\":\"http://a2.twimg.com/profile_images/1078874562/Foto_47_normal.jpg\",\"created_at\":\"Wed, 04 Aug 2010 01:45:13 +0000\",\"from_user\":\"Sjoerd\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":16735834,\"text\":\"@Jarlrule @mitsuo @wilbertleering @zapache @ock12 @ehpo @henneaux no 4square!! SMS Twitter en #ichannel... Vanuit een dampend kroatie\",\"id\":20267732273,\"from_user_id\":905717,\"to_user\":\"Jarlrule\",\"geo\":{\"type\":\"Point\",\"coordinates\":[44.1138,15.2333]},\"iso_language_code\":\"nl\",\"source\":\"<a href="http://twitter.com/" rel="nofollow">Twitter for iPhone</a>\"},{\"profile_image_url\":\"http://a3.twimg.com/profile_images/576571611/Smoked_Tacos_2_jpg_normal.jpg\",\"created_at\":\"Wed, 04 Aug 2010 01:45:13 +0000\",\"from_user\":\"creep4ward\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":null,\"text\":\"Giveaway thru: 8/09. Win RichardSolo Noise Canceling Headphones. Follow @Richard_Solo & retweet http://bit.ly/bD8ezA\",\"id\":20267732038,\"from_user_id\":85290503,\"geo\":null,\"iso_language_code\":\"en\",\"source\":\"<a href="http://twitter.com/">web</a>\"},{\"profile_image_url\":\"http://a2.twimg.com/profile_images/1005104638/Picture_310re_normal.jpg\",\"created_at\":\"Wed, 04 Aug 2010 01:45:13 +0000\",\"from_user\":\"LADiixBANKS\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":null,\"text\":\"Ahhhh so matt finally got yu on the waveee! Lol RT @RitzNOCrackers: @myniggaLIP . ----> @LADiixBANKS guess who has a twitter JIMMY LMAO\",\"id\":20267731542,\"from_user_id\":23608569,\"geo\":null,\"iso_language_code\":\"en\",\"source\":\"<a href="http://seesmic.com/seesmic_mobile/android/" rel="nofollow">Seesmic for Android</a>\"},{\"profile_image_url\":\"http://a2.twimg.com/profile_images/1093270058/never_let_you_go3_normal.jpg\",\"created_at\":\"Wed, 04 Aug 2010 01:45:11 +0000\",\"from_user\":\"DenverBeliebers\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":null,\"text\":\"getting off twitter!!!\",\"id\":20267729271,\"from_user_id\":80666587,\"geo\":null,\"iso_language_code\":\"no\",\"source\":\"<a href="http://twitter.com/">web</a>\"},{\"profile_image_url\":\"http://a2.twimg.com/profile_images/1094119234/image_normal.jpg\",\"created_at\":\"Wed, 04 Aug 2010 01:45:10 +0000\",\"from_user\":\"overDRESSed_1\",\"metadata\":{\"result_type\":\"recent\"},\"to_user_id\":null,\"text\":\"Omg!!!!!! Twitter for iPhone won't work on my phone!!!!!! Having a meltdown!!!!\",\"id\":20267728785,\"from_user_id\":53192938,\"geo\":null,\"iso_language_code\":\"en\",\"source\":\"<a href="http://www.echofon.com/" rel="nofollow">Echofon</a>\"}],\"max_id\":20267740998,\"since_id\":0,\"refresh_url\":\"?since_id=20267740998&q=twitter\",\"next_page\":\"?page=2&max_id=20267740998&q=twitter\",\"results_per_page\":15,\"page\":1,\"completed_in\":0.017069,\"query\":\"twitter\"}" jdata <- fromJSON( x ) checkTrue( is.list( jdata ) ) } rjson/build/0000755000176200001440000000000014672066043012514 5ustar liggesusersrjson/build/vignette.rds0000644000176200001440000000032214672066043015050 0ustar liggesusers‹‹àb```b`a’Ì@&³0`b fd`aàÒÂYÅùyñEÉñÅ©Ee©EzAyåhJD½‚ýý‚œ JÒò‹‚™S’†¦äa0",LHò¬y‰¹©ÅhšØ]R RóR@Âÿ°ëgü¦…Ã;µ²<¿¦E T ‹[fN*ÌÞÌ8‡9ÀÅ Êd Bw†ù(îç,Ê/׃ùäÛ ñÐ=šœ“XŒîQ®”Ä’D½´" ~»Õg{£½rjson/man/0000755000176200001440000000000013646044300012160 5ustar liggesusersrjson/man/newJSONParser.Rd0000644000176200001440000000245113646044300015111 0ustar liggesusers\name{newJSONParser} \alias{newJSONParser} \title{Convert buffered JSON objects To R } \description{ Convert a collection of JSON objects into R objects. } \usage{newJSONParser(method = "R")} \arguments{ \item{method}{use the \code{C} implementation, or the slower original \code{R} implementation} } \value{A list of functions used for parsing objects} \seealso{ \code{\link{toJSON}} } \examples{ sample_json <- ' { "breakfast" : [ "milk", "fruit loops", "juice" ], "lunch" : [ "left over sushi" ] } ' parser <- newJSONParser() parser$addData( sample_json ) food <- parser$getObject() print( food ) #This is equivalent to using FromJSON( sample_json ) #However, sample_json can be split into several parts: ### EXAMPLE 2: part_1 <- '{ "breakfast" : [ "milk", "fruit loops", "juice" ], ' part_2 <- '"lunch" : [ "left over sushi" ]' # close off the first object, and create a 2nd JSON object, which is simply an # array part_3 <- '} [1,2,3,4,5]' parser <- newJSONParser() parser$addData( part_1 ) parser$getObject() #returns NULL - since part_1 isn't complete parser$addData( part_2 ) parser$getObject() #returns NULL - since part_2 still isn't complete parser$addData( part_3 ) parser$getObject() #returns the first food object parser$getObject() #returns the second array } \keyword{interface} rjson/man/rjson.Rd0000644000176200001440000000054513646044300013606 0ustar liggesusers\name{rjson} \docType{package} \alias{rjson} \alias{rjson-package} \title{JSON for R} \description{ JSON (JavaScript Object Notation) is a lightweight data-interchange format. This package converts JSON objects into R objects and vice-versa. See json.org for an overview of JSON. Unicode is unfortunately not supported at the moment. } \keyword{package} rjson/man/toJSON.Rd0000644000176200001440000000231313646044300013562 0ustar liggesusers\name{toJSON} \alias{toJSON} \title{Convert R To JSON} \description{ Convert an R object into a corresponding JSON object. ***Lists with unnamed components are not currently supported*** } \usage{toJSON( x, indent=0, method="C" )} \arguments{ \item{x}{a vector or list to convert into a JSON object} \item{indent}{an integer specifying how much indentation to use when formatting the JSON object; if 0, no pretty-formatting is used} \item{method}{use the \code{C} implementation, or the older slower (and one day to be depricated) \code{R} implementation} } \value{a string containing the JSON object} \seealso{ \code{\link{fromJSON}} } \examples{ x <- list( alpha = 1:5, beta = "Bravo", gamma = list(a=1:3, b=NULL), delta = c(TRUE, FALSE) ) json <- toJSON( x ) fromJSON( json ) #named vectors are treated as JSON objects (lists) toJSON(islands[1:4]) #data.frames must be converted into a list before converting into JSON plot(cars, pch=2) json_cars <- toJSON(as.list(cars)) points( data.frame( fromJSON( json_cars ) ), col="red", pch=3 ) #special R types are encoded as strings testString <- c(1,2,3,4,NA,NaN,Inf,8,9); toJSON(testString); } %TODO find better keyword \keyword{interface} rjson/man/fromJSON.Rd0000644000176200001440000000272513646044300014112 0ustar liggesusers\name{fromJSON} \alias{fromJSON} \title{Convert JSON To R} \description{ Convert a JSON object into an R object. } \usage{fromJSON( json_str, file, method = "C", unexpected.escape = "error", simplify = TRUE )} \arguments{ \item{json_str}{a JSON object to convert} \item{file}{the name of a file to read the json_str from; this can also be a URL. Only one of json_str or file must be supplied.} \item{method}{use the \code{C} implementation, or the older slower (and one day to be depricated) \code{R} implementation} \item{unexpected.escape}{changed handling of unexpected escaped characters. Handling value should be one of "error", "skip", or "keep"; on unexpected characters issue an \code{error}, \code{skip} the character, or \code{keep} the character} \item{simplify}{If TRUE, attempt to convert json-encoded lists into vectors where appropriate. If FALSE, all json-encoded lists will be wrapped in a list even if they are all of the same data type. } } \value{R object that corresponds to the JSON object} \seealso{ \code{\link{toJSON}} } \examples{ fromJSON('[1,2,3]', simplify=TRUE) # returns c(1,2,3) fromJSON('[1,2,3]', simplify=FALSE) # returns list(1,2,3) #As a result, this will output "1" toJSON(fromJSON('[1]', simplify=TRUE)) #Compared with this which will output "[1]" as expected toJSON(fromJSON('[1]', simplify=FALSE)) #R vs C execution time x <- toJSON( iris ) system.time( y <- fromJSON(x) ) system.time( y2 <- fromJSON(x,method = "R") ) } \keyword{interface} rjson/DESCRIPTION0000644000176200001440000000077414672073322013131 0ustar liggesusersPackage: rjson Version: 0.2.23 Title: JSON for R Author: Alex Couture-Beil [aut, cre] Authors@R: person(given = "Alex", family = "Couture-Beil", role = c("aut", "cre"), email = "rjson_pkg@mofo.ca") Maintainer: Alex Couture-Beil Depends: R (>= 4.0.0) Description: Converts R object into JSON objects and vice-versa. URL: https://github.com/alexcb/rjson License: GPL-2 Repository: CRAN Packaged: 2024-09-16 17:34:28 UTC; root NeedsCompilation: yes Date/Publication: 2024-09-16 18:20:02 UTC