AWS AppSync GraphQLApi UserPoolConfig
The
UserPoolConfig
property type specifies the optional authorization configuration for using Amazon
Cognito User Pools with your GraphQL endpoint for an AWS AppSync GraphQL API.
UserPoolConfig
is a property of the AWS::AppSync::GraphQLApi property type.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "AppIdClientRegex" :
String
, "UserPoolId" :String
, "AwsRegion" :String
, "DefaultAction" :String
}
YAML
AppIdClientRegex:
String
UserPoolId:String
AwsRegion:String
DefaultAction:String
Properties
AppIdClientRegex
-
A regular expression for validating the incoming Amazon Cognito User Pool app client ID.
Required: No
Type: String
Update requires: No interruption
UserPoolId
-
The user pool ID.
Required: No
Type: String
Update requires: No interruption
AwsRegion
-
The AWS region in which the user pool was created.
Required: No
Type: String
Update requires: No interruption
DefaultAction
-
The action that you want your GraphQL API to take when a request that uses Amazon Cognito User Pool authentication doesn't match the Amazon Cognito User Pool configuration.
Required: No
Type: String
Update requires: No interruption
See Also
-
UserPoolConfig operation in the AWS AppSync API Reference


| < Day Day Up > |
Application Development GuidelinesThe guidelines in this section aid you in coding more efficient DB2 application programs by
When you're designing a DB2 program, you can easily get caught up in programming for efficiency, thereby compromising the effectiveness of the program. Efficiency can be defined as "doing things right," whereas effectiveness can be defined as "doing the right thing." Design embedded SQL programs to be as efficient as possible (following the guidelines in this book) without compromising the effectiveness of the program. Gauge program efficiency by the following criteria:
For a thorough discussion of DB2 performance monitoring and tuning, consult Parts IV and V. Gauge program effectiveness by the following criteria:
Avoid "Black Boxes"Often, DB2 professionals are confronted with the "black box" approach to database access. The basic idea behind a "black box" is that instead of having programs issue direct requests to the database, they will make requests of a "black box" data engine. This "black box" program is designed to accept parameter-driven requests and then issue common SQL statements to return results to the program. So, a black box is a database access program that sits in between your application programs and DB2. It is designed so that all application programs call the black box for data instead of containing their own embedded SQL statements. The general idea behind such a contraption is that it will simplify DB2 development, because programmers will not need to know how to write SQL. Instead, the programmer just calls the black box program to request whatever data is required. SQL statements become calls—and every programmer knows how to code a call, right? Basically, proponents of the "black box" solution believe that access to data by calling a program with parameters is easier than learning SQL. But the "black box" approach is complete rubbish and should be avoided at all costs. The proper way to formulate requests for DB2 data is by coding well-designed, efficient SQL statements. A "black box" will never be able to completely mimic the functionality of SQL. Furthermore, the "black box" approach is sure to cause performance problems because it will have been coded for multiple users and will forgo the efficient SQL design techniques discussed in Chapter 2, "Data Manipulation Guidelines." For example, what if the data access requirements of the programs calling the "black box" call for the following:
In this case, the "black box" is almost sure to be designed with a single SQL SELECT that returns all of the columns from TABLE1. But, based on which program calls the "black box," only the required rows would be returned. We know this is bad SQL design because we should always return the absolute minimum number of columns and rows per SQL SELECT statement to optimize performance. But even if four different SELECT statements were used by the "black box," if requirements change, so must the "black box." The additional maintenance required for the "black box" program adds unneeded administrative overhead. Furthermore, the "black box" program is a single-point-of-failure for any application that uses it. Perhaps more importantly, using a "black box" always consumes more CPU than simply using embedded SQL statements in your program. The black box application requires additional lines of code to be executed than would be without the black box. It is elementary when you think about it. The CALL statement in the calling program is extra, and the code surrounding the statements in the black box that ties them together is extra. None of this is required if you just plug your SQL statements right into your application programs. This extra code must be compiled and executed. When extra code is required (no matter how little or efficient it may be) extra CPU will be expended to run the application. More code means more work, and that means degraded performance. All in all, "black boxes" provide no benefit but at significant cost. Application programs should be designed using SQL to access DB2 data. No "black boxes" should be allowed. Code Modular DB2 ProgramsYou should design DB2 programs to be modular. One program should accomplish a single, well-defined task. If you need to execute multiple tasks, structure the programs so that tasks can be strung together by having the programs call one another. This approach is preferable to a single, large program that accomplishes many tasks for two reasons. First, single tasks in separate programs make the programs easier to understand and maintain. Second, if each task can be executed either alone or with other tasks, isolating the tasks in a program enables easier execution of any single task or list of tasks. Minimize the Size of DB2 ProgramsCode DB2 programs to be as small as possible. Streamlining your application code to remove unnecessary statements results in better performance. This recommendation goes hand-in-hand with the preceding one. Consider Stored Procedures for ReuseabilityWhen you're modularizing a DB2 application, do so with an eye toward reuseability. Whenever a particular task must be performed across many programs, applications, or systems, consider developing a stored procedure. A stored procedure, after it is created, can be called from multiple applications. However, when you modify the code, you need to modify only the stored procedure code, not each individual program. For more information on stored procedures, refer to Chapter 15. Consider User-Defined Functions for ReuseabilityIf your organization relies on business rules that transform data, consider implementing user-defined functions. Data transformation tasks that are performed by many programs, applications, or systems, can benefit from the reuseability aspects of user-defined functions. Consider developing user-defined functions for the business rule and then using it in subsequent SQL statements. This reuse is preferable to coding the business rule into multiple applications because
For more information on user-defined functions, refer to Chapter 4, "Using DB2 User-Defined Functions and Data Types." Be Aware of Active Database ConstructsYou can create active DB2 databases using features such as referential integrity and triggers. An active database takes action based on changes to the state of the data stored in it. For example, if a row is deleted, subsequent activity automatically occurs (such as enforcing a DELETE CASCADE referential constraint or an INSERT trigger firing that causes other data to be modified). You need to be aware of the active database features that have been implemented to appropriately code DB2 application programs. This awareness is required because you need to know the processes that the database itself will automatically perform so your application programs do not repeat the process. Use Unqualified SQLUse unqualified table, view, synonym, and alias names in application programs. This way, you can ease the process of moving programs, plans, and packages from the test environment to the production environment. If tables are explicitly qualified in an application program, and tables are qualified differently in test DB2 than they are in production DB2, programs must be modified before they are turned over to an operational production application. When the program is bound, the tables are qualified by one of the following:
Avoid SELECT *Never use SELECT * in an embedded SQL program. Request each column that needs to be accessed. Also, follow the SQL coding recommendations in Chapter 2. Filter Data Using the SQL WHERE ClauseFavor the specification of DB2 predicates to filter rows from a desired results table instead of the selection of all rows and the use of program logic to filter those not needed. For example, coding the embedded SELECT SELECT EMPNO, LASTNAME, SALARY FROM EMP WHERE SALARY > 10000 is preferred to coding the same SELECT statement without the WHERE clause and following the SELECT statement with an IF statement:
IF SALARY < 10000
NEXT SENTENCE
ELSE
Process data.
The WHERE clause usually outperforms the host language IF statement because I/O is reduced. Use SQL to Join TablesTo join tables, favor SQL over application logic, except when the data retrieved by the join must be updated. In this situation, consider coding multiple cursors to mimic the join process. Base the predicates of one cursor on the data retrieved from a fetch to the previous cursor. Listing 11.4 presents pseudo-code for retrieving data from a cursor declared with an SQL join statement. Listing 11.4. Pseudo-code for Retrieving Data from an SQL JoinEXEC SQL DECLARE JOINCSR CURSOR FOR SELECT D.DEPTNO, D.DEPTNAME, E.EMPNO, E.SALARY FROM DEPT D, EMP E WHERE D.DEPTNO = E.WORKDEPT END-EXEC. EXEC SQL OPEN JOINCSR END-EXEC. Loop until no more rows returned or error EXEC SQL FETCH JOINCSR INTO :DEPTNO, :DEPTNAME, :EMPNO, :SALARY END-EXEC Process retrieved data end of loop The criteria for joining tables are in the predicates of the SQL statement. Compare this method to the application join example in Listing 11.5. The pseudo-code in this listing employs two cursors, each accessing a different table, to join the EMP table with the DEPT table using application logic. Listing 11.5. Pseudo-code for Retrieving Data from an Application JoinEXEC SQL DECLARE DEPTCSR CURSOR FOR SELECT DEPTNO, DEPTNAME FROM DEPT END-EXEC. EXEC SQL DECLARE EMPCSR CURSOR FOR SELECT EMPNO, SALARY FROM EMP WHERE WORKDEPT = :HV-WORKDEPT END-EXEC. EXEC SQL OPEN DEPTCSR END-EXEC. Loop until no more department rows or error EXEC SQL FETCH DEPTCSR INTO :DEPTNO, :DEPTNAME END-EXEC. MOVE DEPTNO TO HV-WORKDEPT. EXEC SQL OPEN EMPCSR END-EXEC. Loop until no more employee rows or error EXEC SQL FETCH EMPCSR INTO :EMPNO, :SALARY END-EXEC. Process retrieved data end of loop end of loop Joining tables by application logic requires additional code and is usually less efficient than an SQL join. When data will be updated in a cursor-controlled fashion, favor application joining over SQL joining because the results of an SQL join are not always updated directly. When you're updating the result rows of an application join, remember to code FOR UPDATE OF on each cursor, specifying every column that can be updated. When you're only reading the data without subsequent modification, remember to code FOR READ ONLY (or FOR FETCH ONLY) on the cursor. Avoid Host StructuresAvoid selecting or fetching INTO a group-level host variable structure. Your program is more independent of table changes if you select or fetch into individual data elements. For example, code EXEC SQL FETCH C1 INTO :DEPTNO, :DEPTNAME:DEPTNAME-IND, :MGRNO:MGRNO-IND, :ADMDEPT:ADMRDEPT-IND END-EXEC. instead of EXEC SQL FETCH C1 INTO :DCLDEPT:DEPT-IND END-EXEC. Although the second example appears easier to code, the first example is preferred. Using individual host variables instead of host structures makes programs easier to understand, easier to debug, and easier to maintain. Use ORDER BY to Ensure SequencingAlways use ORDER BY when your program must ensure the sequencing of returned rows. Otherwise, the rows are returned to your program in an unpredictable sequence. The only way to guarantee a specific sequence for your results set is to use the ORDER BY clause on your SELECT statement.  Doing so tells DB2 that you will not be modifying data using the cursor. This makes the cursor non-ambiguous and provides DB2 with better options to optimize query performance. Explicitly Code LiteralsWhen possible, code literals explicitly in the SQL statement rather than move the literals to host variables and then process the SQL statement using the host variables. This technique gives the DB2 optimization process the best opportunity for arriving at an optimal access path. Although DB2 offers an option to reoptimize SQL statements on the fly (that is, REOPT(VARS)), explicit literal coding still should be considered when feasible. It should not, however, be a forced standard. As a general rule of thumb, if the value will not change for more than a year, consider coding it as a literal instead of using a host variable. Use Temporary Tables to Simulate a Host Variable ListSometimes the need arises to check a column for equality against a list of values. This can be difficult to do efficiently without using temporary tables. For example, suppose you have a list of twelve employee numbers for which you want names. You could code a loop that feeds the twelve values, one-by-one, into a host variable, say HVEMPNO, and execute the following SQL SELECT EMPNO, LASTNAME, FIRSTNME FROM EMP WHERE EMPNO = :HVEMPNO; Of course, this requires twelve executions of the SQL statement. Wouldn't it be easier if you could supply the twelve values in a single SQL statement, as shown in the following? SELECT EMPNO, LASTNAME, FIRSTNME FROM EMP WHERE EMPNO IN (:HV1, :HV2, :HV3, :HV4, :HV5, :HV6, :HV7, :HV8, :HV9, :HV10, :HV11, :HV12); Well, that SQL is valid, but it requires twelve host variables. What if the number of values is not constant? If fewer than twelve values are supplied, you can put a non-existent value (low values, for example) in the remaining host variables and still be able to execute the SQL. But if more than twelve values are supplied, the statement has to be run multiple times—exactly the situation we were trying to avoid. Instead, declare and use a temporary table. For example EXEC SQL DECLARE userid.GTT (COL_LIST INTEGER NOT NULL); Insert all the values for the list into the COL_LIST column of the temporary table (GTT) and issue the following SQL: SELECT EMPNO, LASTNAME, FIRSTNME FROM EMP WHERE EMPNO IN (SELECT COL_LIST FROM GTT); Of course, each of the previous SELECT statements should be embedded in a cursor because multiple rows can be retrieved.
Joining Non-Relational Data Using SQLConsider using temporary tables when you need to join non-relational data to DB2 data. Recall from Chapter 5 that there are two types of temporary tables supported by DB2: declared and created. Temporary tables are quite useful for storing non-relational data in a relational, or tabular, format. For example, consider an application that needs to join employee information stored in an IMS database to employee information in the a DB2 table, such as the EMP table. One approach, of course, would be to retrieve the required data from the IMS database and join it using program logic to the DB2 data. However, you could also create a temporary table and INSERT the IMS data as it is retrieved into the temporary table. After the temporary table is populated, it can be joined to the EMP table using a standard SQL join. This technique is not limited to IMS data. Any non-relational data source can be read and inserted into a temporary table, which can then be accessed using SQL for the duration of the unit of work. Avoid Cursors If PossibleWhenever doing so is practical, avoid the use of a cursor. Cursors add overhead to an application program. You can avoid cursors, however, only when the program retrieves a single row from an application table or tables. Code Cursors to Retrieve Multiple RowsIf you do not check for -811 SQLCODEs, always code a cursor for each SELECT statement that does not access tables either by the primary key or by columns specified in a unique index.
When writing a program that needs to move forward and backward through the SQL results set, use a scrollable cursor. In terms of both ease of development and performance, scrollable cursors are preferable to coding a scrolling capability using host language code. Specify Isolation Level by SQL StatementIndividual SQL statements can specify a different, appropriate isolation level. Although each DB2 plan and package has an isolation level, you can override it for individual SQL statements by using the WITH clause. You can specify the WITH clause for the following types of SQL statements:
Valid options are as follow:
The KEEP UPDATE LOCKS clause was added as of DB2 V5. It indicates that DB2 is to acquire X locks instead of U or S locks on all qualifying rows or pages. Use KEEP UPDATE LOCKS sparingly. Although it can better serialize updates, it can reduce concurrency. In Chapter 13, "Program Preparation," you can find additional guidance for each of the isolation levels. Use the Sample Programs for InspirationIBM provides source code in several host languages for various sample application programs. This source code is in a PDS library named SYS1.DB2V8R1.DSNSAMP (or something similar) supplied with the DB2 system software. Samples of COBOL, PL/I, FORTRAN, Assembler, and C programs for TSO, CICS, and IMS are available in the aforementioned library. Favor Complex SQL for PerformanceWhen embedding SQL in application programs, developers are sometimes tempted to break up complex SQL statements into smaller, easier-to-understand SQL statements and combine them together using program logic. Avoid this approach. When SQL is properly coded, DB2 is almost always more efficient than equivalent application code when it comes to accessing and updating DB2 data. |
| < Day Day Up > |


[%# DO NOT EDIT THIS FILE: generated from perlfaq (https://github.com/perl-doc-cats/perlfaq) -%] [%- # Used to get info from htmlify to ttree page.import({ title => "perlfaq", section => "faq", description => "Perl Frequently Asked Questions, Perl FAQ", keywords => "perl, perl faq, perlfaq" }); perlfaq_version = 5.021011; -%]
perlfaq - frequently asked questions about Perl
version 5.021011
The perlfaq comprises several documents that answer the most commonly asked questions about Perl and Perl programming. It's divided by topic into nine major sections outlined in this document.
The perlfaq is an evolving document. Read the latest version at http://learn.perl.org/faq/. It is also included in the standard Perl distribution.
The perldoc
command line tool is part of the standard Perl distribution. To read the perlfaq:
$ perldoc perlfaq
To search the perlfaq question headings:
$ perldoc -q open
Review https://github.com/perl-doc-cats/perlfaq/wiki. If you don't find your suggestion create an issue or pull request against https://github.com/perl-doc-cats/perlfaq.
Once approved, changes are merged into https://github.com/tpf/perlfaq, the repository which drives http://learn.perl.org/faq/, and they are distributed with the next Perl 5 release.
Try the resources in perlfaq2.
This section of the FAQ answers very general, high-level questions about Perl.
What is Perl?
Who supports Perl? Who develops it? Why is it free?
Which version of Perl should I use?
What are Perl 4, Perl 5, or Perl 6?
What is Perl 6?
How stable is Perl?
How often are new versions of Perl released?
Is Perl difficult to learn?
How does Perl compare with other languages like Java, Python, REXX, Scheme, or Tcl?
Can I do [task] in Perl?
When shouldn't I program in Perl?
What's the difference between "perl" and "Perl"?
What is a JAPH?
How can I convince others to use Perl?
This section of the FAQ answers questions about where to find source and documentation for Perl, support, and related matters.
What machines support Perl? Where do I get it?
How can I get a binary version of Perl?
I don't have a C compiler. How can I build my own Perl interpreter?
I copied the Perl binary from one machine to another, but scripts don't work.
I grabbed the sources and tried to compile but gdbm/dynamic loading/malloc/linking/... failed. How do I make it work?
What modules and extensions are available for Perl? What is CPAN?
Where can I get information on Perl?
What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org?
Where can I post questions?
Perl Books
Which magazines have Perl content?
Which Perl blogs should I read?
What mailing lists are there for Perl?
Where can I buy a commercial version of Perl?
Where do I send bug reports?
This section of the FAQ answers questions related to programmer tools and programming support.
How do I do (anything)?
How can I use Perl interactively?
How do I find which modules are installed on my system?
How do I debug my Perl programs?
How do I profile my Perl programs?
How do I cross-reference my Perl programs?
Is there a pretty-printer (formatter) for Perl?
Is there an IDE or Windows Perl Editor?
Where can I get Perl macros for vi?
Where can I get perl-mode or cperl-mode for emacs?
How can I use curses with Perl?
How can I write a GUI (X, Tk, Gtk, etc.) in Perl?
How can I make my Perl program run faster?
How can I make my Perl program take less memory?
Is it safe to return a reference to local or lexical data?
How can I free an array or hash so my program shrinks?
How can I make my CGI script more efficient?
How can I hide the source for my Perl program?
How can I compile my Perl program into byte code or C?
How can I get #!perl
to work on [MS-DOS,NT,...]?
Can I write useful Perl programs on the command line?
Why don't Perl one-liners work on my DOS/Mac/VMS system?
Where can I learn about CGI or Web programming in Perl?
Where can I learn about object-oriented Perl programming?
Where can I learn about linking C with Perl?
I've read perlembed, perlguts, etc., but I can't embed perl in my C program; what am I doing wrong?
When I tried to run my script, I got this message. What does it mean?
What's MakeMaker?
This section of the FAQ answers questions related to manipulating numbers, dates, strings, arrays, hashes, and miscellaneous data issues.
Why am I getting long decimals (eg, 19.9499999999999) instead of the numbers I should be getting (eg, 19.95)?
Why is int() broken?
Why isn't my octal data interpreted correctly?
Does Perl have a round() function? What about ceil() and floor()? Trig functions?
How do I convert between numeric representations/bases/radixes?
Why doesn't & work the way I want it to?
How do I multiply matrices?
How do I perform an operation on a series of integers?
How can I output Roman numerals?
Why aren't my random numbers random?
How do I get a random number between X and Y?
How do I find the day or week of the year?
How do I find the current century or millennium?
How can I compare two dates and find the difference?
How can I take a string and turn it into epoch seconds?
How can I find the Julian Day?
How do I find yesterday's date?
Does Perl have a Year 2000 or 2038 problem? Is Perl Y2K compliant?
How do I validate input?
How do I unescape a string?
How do I remove consecutive pairs of characters?
How do I expand function calls in a string?
How do I find matching/nesting anything?
How do I reverse a string?
How do I expand tabs in a string?
How do I reformat a paragraph?
How can I access or change N characters of a string?
How do I change the Nth occurrence of something?
How can I count the number of occurrences of a substring within a string?
How do I capitalize all the words on one line?
How can I split a [character]-delimited string except when inside [character]?
How do I strip blank space from the beginning/end of a string?
How do I pad a string with blanks or pad a number with zeroes?
How do I extract selected columns from a string?
How do I find the soundex value of a string?
How can I expand variables in text strings?
What's wrong with always quoting "$vars"?
Why don't my <<HERE documents work?
What is the difference between a list and an array?
What is the difference between $array[1] and @array[1]?
How can I remove duplicate elements from a list or array?
How can I tell whether a certain element is contained in a list or array?
How do I compute the difference of two arrays? How do I compute the intersection of two arrays?
How do I test whether two arrays or hashes are equal?
How do I find the first array element for which a condition is true?
How do I handle linked lists?
How do I handle circular lists?
How do I shuffle an array randomly?
How do I process/modify each element of an array?
How do I select a random element from an array?
How do I permute N elements of a list?
How do I sort an array by (anything)?
How do I manipulate arrays of bits?
Why does defined() return true on empty arrays and hashes?
How do I process an entire hash?
How do I merge two hashes?
What happens if I add or remove keys from a hash while iterating over it?
How do I look up a hash element by value?
How can I know how many entries are in a hash?
How do I sort a hash (optionally by value instead of key)?
How can I always keep my hash sorted?
What's the difference between "delete" and "undef" with hashes?
Why don't my tied hashes make the defined/exists distinction?
How do I reset an each() operation part-way through?
How can I get the unique keys from two hashes?
How can I store a multidimensional array in a DBM file?
How can I make my hash remember the order I put elements into it?
Why does passing a subroutine an undefined element in a hash create it?
How can I make the Perl equivalent of a C structure/C++ class/hash or array of hashes or arrays?
How can I use a reference as a hash key?
How can I check if a key exists in a multilevel hash?
How can I prevent addition of unwanted keys into a hash?
How do I handle binary data correctly?
How do I determine whether a scalar is a number/whole/integer/float?
How do I keep persistent data across program calls?
How do I print out or copy a recursive data structure?
How do I define methods for every class/object?
How do I verify a credit card checksum?
How do I pack arrays of doubles or floats for XS code?
This section deals with I/O and the "f" issues: filehandles, flushing, formats, and footers.
How do I flush/unbuffer an output filehandle? Why must I do this?
How do I change, delete, or insert a line in a file, or append to the beginning of a file?
How do I count the number of lines in a file?
How do I delete the last N lines from a file?
How can I use Perl's -i
option from within a program?
How can I copy a file?
How do I make a temporary file name?
How can I manipulate fixed-record-length files?
How can I make a filehandle local to a subroutine? How do I pass filehandles between subroutines? How do I make an array of filehandles?
How can I use a filehandle indirectly?
How can I set up a footer format to be used with write()?
How can I write() into a string?
How can I open a filehandle to a string?
How can I output my numbers with commas added?
How can I translate tildes (~) in a filename?
How come when I open a file read-write it wipes it out?
Why do I sometimes get an "Argument list too long" when I use <*>?
How can I open a file with a leading ">" or trailing blanks?
How can I reliably rename a file?
How can I lock a file?
Why can't I just open(FH, ">file.lock")?
I still don't get locking. I just want to increment the number in the file. How can I do this?
All I want to do is append a small amount of text to the end of a file. Do I still have to use locking?
How do I randomly update a binary file?
How do I get a file's timestamp in perl?
How do I set a file's timestamp in perl?
How do I print to more than one file at once?
How can I read in an entire file all at once?
How can I read in a file by paragraphs?
How can I read a single character from a file? From the keyboard?
How can I tell whether there's a character waiting on a filehandle?
How do I do a tail -f
in perl?
How do I dup() a filehandle in Perl?
How do I close a file descriptor by number?
Why can't I use "C:\temp\foo" in DOS paths? Why doesn't `C:\temp\foo.exe` work?
Why doesn't glob("*.*") get all the files?
Why does Perl let me delete read-only files? Why does -i
clobber protected files? Isn't this a bug in Perl?
How do I select a random line from a file?
Why do I get weird spaces when I print an array of lines?
How do I traverse a directory tree?
How do I delete a directory tree?
How do I copy an entire directory?
This section is surprisingly small because the rest of the FAQ is littered with answers involving regular expressions. For example, decoding a URL and checking whether something is a number can be handled with regular expressions, but those answers are found elsewhere in this document (in perlfaq9 : "How do I decode or create those %-encodings on the web" and perlfaq4 : "How do I determine whether a scalar is a number/whole/integer/float", to be precise).
How can I hope to use regular expressions without creating illegible and unmaintainable code?
I'm having trouble matching over more than one line. What's wrong?
How can I pull out lines between two patterns that are themselves on different lines?
How do I match XML, HTML, or other nasty, ugly things with a regex?
I put a regular expression into $/ but it didn't work. What's wrong?
How do I substitute case-insensitively on the LHS while preserving case on the RHS?
How can I make \w
match national character sets?
How can I match a locale-smart version of /[a-zA-Z]/
?
How can I quote a variable to use in a regex?
What is /o
really for?
How do I use a regular expression to strip C-style comments from a file?
Can I use Perl regular expressions to match balanced text?
What does it mean that regexes are greedy? How can I get around it?
How do I process each word on each line?
How can I print out a word-frequency or line-frequency summary?
How can I do approximate matching?
How do I efficiently match many regular expressions at once?
Why don't word-boundary searches with \b
work for me?
Why does using $&, $`, or $' slow my program down?
What good is \G
in a regular expression?
Are Perl regexes DFAs or NFAs? Are they POSIX compliant?
What's wrong with using grep in a void context?
How can I match strings with multibyte characters?
How do I match a regular expression that's in a variable?
This section deals with general Perl language issues that don't clearly fit into any of the other sections.
Can I get a BNF/yacc/RE for the Perl language?
What are all these $@%&* punctuation signs, and how do I know when to use them?
Do I always/never have to quote my strings or use semicolons and commas?
How do I skip some return values?
How do I temporarily block warnings?
What's an extension?
Why do Perl operators have different precedence than C operators?
How do I declare/create a structure?
How do I create a module?
How do I adopt or take over a module already on CPAN?
How do I create a class?
How can I tell if a variable is tainted?
What's a closure?
What is variable suicide and how can I prevent it?
How can I pass/return a {Function, FileHandle, Array, Hash, Method, Regex}?
How do I create a static variable?
What's the difference between dynamic and lexical (static) scoping? Between local() and my()?
How can I access a dynamic variable while a similarly named lexical is in scope?
What's the difference between deep and shallow binding?
Why doesn't "my($foo) = <$fh>;" work right?
How do I redefine a builtin function, operator, or method?
What's the difference between calling a function as &foo and foo()?
How do I create a switch or case statement?
How can I catch accesses to undefined variables, functions, or methods?
Why can't a method included in this same file be found?
How can I find out my current or calling package?
How can I comment out a large block of Perl code?
How do I clear a package?
How can I use a variable as a variable name?
What does "bad interpreter" mean?
Do I need to recompile XS modules when there is a change in the C library?
This section of the Perl FAQ covers questions involving operating system interaction. Topics include interprocess communication (IPC), control over the user-interface (keyboard, screen and pointing devices), and most anything else not related to data manipulation.
How do I find out which operating system I'm running under?
How come exec() doesn't return?
How do I do fancy stuff with the keyboard/screen/mouse?
How do I print something out in color?
How do I read just one key without waiting for a return key?
How do I check whether input is ready on the keyboard?
How do I clear the screen?
How do I get the screen size?
How do I ask the user for a password?
How do I read and write the serial port?
How do I decode encrypted password files?
How do I start a process in the background?
How do I trap control characters/signals?
How do I modify the shadow password file on a Unix system?
How do I set the time and date?
How can I sleep() or alarm() for under a second?
How can I measure time under a second?
How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
Why doesn't my sockets program work under System V (Solaris)? What does the error message "Protocol not supported" mean?
How can I call my system's unique C functions from Perl?
Where do I get the include files to do ioctl() or syscall()?
Why do setuid perl scripts complain about kernel problems?
How can I open a pipe both to and from a command?
Why can't I get the output of a command with system()?
How can I capture STDERR from an external command?
Why doesn't open() return an error when a pipe open fails?
What's wrong with using backticks in a void context?
How can I call backticks without shell processing?
Why can't my script read from STDIN after I gave it EOF (^D on Unix, ^Z on MS-DOS)?
How can I convert my shell script to perl?
Can I use perl to run a telnet or ftp session?
How can I write expect in Perl?
Is there a way to hide perl's command line from programs such as "ps"?
I {changed directory, modified my environment} in a perl script. How come the change disappeared when I exited the script? How do I get my changes to be visible?
How do I close a process's filehandle without waiting for it to complete?
How do I fork a daemon process?
How do I find out if I'm running interactively or not?
How do I timeout a slow event?
How do I set CPU limits?
How do I avoid zombies on a Unix system?
How do I use an SQL database?
How do I make a system() exit on control-C?
How do I open a file without blocking?
How do I tell the difference between errors from the shell and perl?
How do I install a module from CPAN?
What's the difference between require and use?
How do I keep my own module/library directory?
How do I add the directory my program lives in to the module/library search path?
How do I add a directory to my include path (@INC) at runtime?
Where are modules installed?
What is socket.ph and where do I get it?
This section deals with questions related to running web sites, sending and receiving email as well as general networking.
Should I use a web framework?
Which web framework should I use?
What is Plack and PSGI?
How do I remove HTML from a string?
How do I extract URLs?
How do I fetch an HTML file?
How do I automate an HTML form submission?
How do I decode or create those %-encodings on the web?
How do I redirect to another page?
How do I put a password on my web pages?
How do I make sure users can't enter values into a form that causes my CGI script to do bad things?
How do I parse a mail header?
How do I check a valid mail address?
How do I decode a MIME/BASE64 string?
How do I find the user's mail address?
How do I send email?
How do I use MIME to make an attachment to a mail message?
How do I read email?
How do I find out my hostname, domainname, or IP address?
How do I fetch/put an (S)FTP file?
How can I do RPC in Perl?
Tom Christiansen wrote the original perlfaq then expanded it with the help of Nat Torkington. brian d foy substantially edited and expanded the perlfaq. perlfaq-workers and others have also supplied feedback, patches and corrections over the years.
Tom Christiansen wrote the original version of this document. brian d foy<EMAIL_ADDRESS>wrote this version. See the individual perlfaq documents for additional copyright information.
This document is available under the same terms as Perl itself. Code examples in all the perlfaq documents are in the public domain. Use them as you see fit (and at your own risk with no warranty from anyone).
Version: 5.021011


Intriguing web designs and fascinating results, makes you happy and earns us a loyal customer – Always there, looking after you!
We push. We make you nervous. We get results. Let's get to work. Whenever you need, you will find always there, looking after you!
As your business flourishes, we grow as a business and so our team makes sure that your growth is supported and we go hand in hand.
We work to deliver results, celebrate entrepreneurship, stand for justice, and believe in the progress of common good.
This free template is based on the popular Css3 and Html5. You can easily customize if you have little Css3 knowledge.
Every project begins with a round of research and discovery. We dig through the values, strategy, and organizational culture that make you unique.


Full Name:
Email Address:
Remember me on this computer
To access your account, please provide the following:
Account Number:
Phone Number
House Number:
How many days would you like us to hold your paper?
Start holding the paper on:
Article Title


Pupils learn to assemble AK-47 rifles as Russia marks Kalashnikov's centenary
by AFPMOSCOW: More than a hundred Russian schoolchildren were taught to assemble AK-47s in a Moscow park on Saturday as the country this weekend celebrates the centenary of the birth of Mikhail Kalashnikov, inventor of the legendary rifle.
On Sunday, the 100th anniversary of Kalashnikov’s birth is to be marked by a number of events, including museum display, biopic and patriotic lessons.
On Saturday, dozens of boys and girls, some clad in camouflage fatigues, took part in a competition that saw them play paintball and assemble mock-up Kalashnikov rifles in a park in southern Moscow.
“At least 100 people took apart the Kalashnikovs today,” Andrei Starykh, a director at the youth organisation that organised the competition, Gvardia, proudly told AFP.
He said Gvardia regularly organises similar events and Saturday’s get-together was not directly linked to Kalashnikov’s anniversary.
He insisted however that children in Russia need to know “real life” and therefore have to know how to assemble the celebrated weapon.
“How can one not know?” asked instructor Roman Kuzmin.
“So much is happening around the country,” he said, adding that boys are often mesmerised by the gun.
“There’s nothing extra there, it is very beautiful.”
Kalashnikov, who died in 2013 at the age of 94, is seen in Russia as a national hero and symbol of the country’s proud military past.
His assault rifle has become a weapon of choice for both guerrillas and governments the world over.
It is also a staple of military education in Russia.
More than 100 million Kalashnikovs have been sold worldwide and about 50 armies use the AK-47 including those in Iraq and Somalia.


Experienced, task-driven professional with 10 years
of experience in web design and development across
multiple industries. Proficient in user interfaces,
and implementing new features based on user
feedback.
Work
Experience
UCSD Health
December-2021- Present
Frontend Developer
Front-end development on existing full-stack
apps and sites.


Two arrested for brutal assault on juvenile
by Staff ReporterTwo history-sheeters have been arrested by the Pettah police for allegedly abducting and grievously injuring a juvenile.
The accused have been identified as R. Arun, 33, of Puthenpalam, near Kannammoola, and B. Rajesh, 34, of Kolloor. The duo have been accused of assaulting 14-year old Neeraj, who hails from Anayara late Friday.
According to the police, both arrested were Neeraj’s father Raj’s friends. The incident occurred when the victim was alone in his house and the duo were consuming liquor close by. Having found one of their mobile phones to have gone missing, they rushed to Neeraj’s house and accused him of theft.
They purportedly took him to an abandoned location near the NH-66 bypass on a motorcycle. The duo then went on to brutally attack Neeraj, who suffered fractures on his arms and legs, and serious internal injuries. After dropping him off near his house, the accused allegedly threatened Neeraj against revealing his ordeal. However, a few people who witnessed the conversation alerted the police.


Deitel & Associates, Inc. is an internationally recognized corporate training and publishing organization specializing in programming languages, Internet/World Wide Web technology and object technology education. The company provides courses on Java, C++, Visual Basic, C#, C, Internet and World Wide Web programming, Object Technology, and more.
The company's clients include many Fortune 1000 companies, government agencies, branches of the military and business organizations. Through its publishing partnership with Prentice Hall, Deitel & Associates, Inc. publishes leading-edge programming textbooks, professional books, interactive web-based multimedia Cyber Classrooms, satellite courses and DVD and web-based video courses.


This is a jQuery Mobile-based website made for fun, where I write down my characters' info and builds. Not all of them are final builds, some are stil under study and may change at any moment.
I believe each build must reflect the player's way of playing, including habits and taste. So, there isn't the best build of all, but the best build for each person. I am rather aggressive in my way of playing, mostly. So my builds reflect that. I encourage everyone to make their own builds ;)


Overview
Package
Class
Use
Tree
Deprecated
Index
Help
PREV LETTER
NEXT LETTER
FRAMES
NO FRAMES
All Classes
A
B
C
D
F
G
H
I
M
N
P
R
S
T
U
V
W
V
ValidityPeriod
- Class in
com.nexmo.messaging.sdk.messages.parameters
ValidityPeriod.java
Created on 5 January 2011, 17:34
Represents the time period that the submitted message is valid for.
ValidityPeriod(int)
- Constructor for class com.nexmo.messaging.sdk.messages.parameters.
ValidityPeriod
Instanciate a new ValidityPeriod instance ..
ValidityPeriod(int, int, int)
- Constructor for class com.nexmo.messaging.sdk.messages.parameters.
ValidityPeriod
Instanciate a new ValidityPeriod instance, specifying the time-to-live as a number of hours, minutes and seconds
ValidityPeriod(Date)
- Constructor for class com.nexmo.messaging.sdk.messages.parameters.
ValidityPeriod
Instanciate a new ValidityPeriod instance ..
ValidityPeriod(Calendar)
- Constructor for class com.nexmo.messaging.sdk.messages.parameters.
ValidityPeriod
Instanciate a new ValidityPeriod instance ..
valueOf(String)
- Static method in enum com.nexmo.messaging.sdk.insight.
Feature
Returns the enum constant of this type with the specified name.
valueOf(String)
- Static method in enum com.nexmo.messaging.sdk.messages.parameters.
MessageClass
Returns the enum constant of this type with the specified name.
values()
- Static method in enum com.nexmo.messaging.sdk.insight.
Feature
Returns an array containing the constants of this enum type, in the order they are declared.
values()
- Static method in enum com.nexmo.messaging.sdk.messages.parameters.
MessageClass
Returns an array containing the constants of this enum type, in the order they are declared.
VerificationSearchMultiple
- Class in
com.nexmo.messaging.sdk.examples
A verification search with multiple requestIds
VerificationSearchMultiple()
- Constructor for class com.nexmo.messaging.sdk.examples.
VerificationSearchMultiple
VerificationSearchSingle
- Class in
com.nexmo.messaging.sdk.examples
Example of a verification search - single request
VerificationSearchSingle()
- Constructor for class com.nexmo.messaging.sdk.examples.
VerificationSearchSingle
VerifyRequest
- Class in
com.nexmo.messaging.sdk.verify
Represents a request passed to the Nexmo verify API.
VerifyRequest(String, String)
- Constructor for class com.nexmo.messaging.sdk.verify.
VerifyRequest
VerifyRequest(String, String, String, Integer, String, String, Integer)
- Constructor for class com.nexmo.messaging.sdk.verify.
VerifyRequest
Full Constructor
verifyRequestSignature(HttpServletRequest, String)
- Static method in class com.nexmo.security.
VerifySignature
looks at the current http request and verifies that the request signature, if supplied is valid.
VerifyResponse
- Class in
com.nexmo.messaging.sdk.verify
Represents a response from a verify request
VerifyResponse(String, Integer, String)
- Constructor for class com.nexmo.messaging.sdk.verify.
VerifyResponse
VerifySignature
- Class in
com.nexmo.security
VerifySignature.java
Helper class to assist with verifying sigmatures on inbound message requests Upon receiving a request, the HttpServletRequest object should be passed to the verifyRequestSignature method along with the secret key assigned to your account.
VerifySignature()
- Constructor for class com.nexmo.security.
VerifySignature
Overview
Package
Class
Use
Tree
Deprecated
Index
Help
PREV LETTER
NEXT LETTER
FRAMES
NO FRAMES
All Classes
A
B
C
D
F
G
H
I
M
N
P
R
S
T
U
V
W


Dox is a JavaScript documentation generator written with node. Dox no longer generates an opinionated structure or style for your docs, it simply gives you a JSON representation, allowing you to use markdown and JSDoc-style tags.
Install from npm:
$ npm install -g dox
dox(1)
operates over stdio:
$ dox < utils.js
...JSON...
to inspect the generated data you can use the --debug
flag, which is easier to read than the JSON output:
$ dox --debug < utils.js
utils.js:
/**
* Escape the given `html`.
*
* @example
* utils.escape('')
* // => ''
*
* @param {String} html string to be escaped
* @return {String} escaped html
* @api public
*/
exports.escape = function(html){
return String(html)
.replace(/&(?!\w+;)/g, '&')
.replace(/</g, '<')
.replace(/>/g, '>');
};
output:
[
{
"tags": [
{
"type": "example",
"string": " utils.escape('')\n // => ''",
"html": "
utils.escape('')\n// => '<script></script>'\n
"
},
{
"type": "param",
"string": "{String} html string to be escaped",
"types": [
"String"
],
"name": "html",
"description": "string to be escaped"
},
{
"type": "return",
"string": "{String} escaped html",
"types": [
"String"
],
"description": "escaped html"
},
{
"type": "api",
"string": "public",
"visibility": "public"
}
],
"description": {
"full": "
Escape the given html.
",
"summary": "
Escape the given html.
",
"body": ""
},
"isPrivate": false,
"ignore": false,
"code": "exports.escape = function(html){\n return String(html)\n .replace(/&(?!\\w+;)/g, '&')\n .replace(/</g, '<')\n .replace(/>/g, '>');\n};",
"ctx": {
"type": "method",
"receiver": "exports",
"name": "escape",
"string": "exports.escape()"
}
}
]
This output can then be passed to a template for rendering. Look below at the "Properties" section for details.
Usage: dox [options]
Options:
-h, --help output usage information
-V, --version output the version number
-r, --raw output "raw" comments, leaving the markdown intact
-a, --api output markdown readme documentation
-s, --skipPrefixes [prefixes] skip comments prefixed with these prefixes, separated by commas
-d, --debug output parsed comments for debugging
-S, --skipSingleStar set to false to ignore `/* ... */` comments
Examples:
# stdin
$ dox > myfile.json
# operates over stdio
$ dox < myfile.js > myfile.json
var dox = require('dox'),
code = "...";
var obj = dox.parseComments(code);
// [{ tags:[ ... ], description, ... }, { ... }, ...]
A "comment" is comprised of the following detailed properties:
- tags
- description
- isPrivate
- isEvent
- isConstructor
- line
- ignore
- code
- ctx
A dox description is comprised of three parts, the "full" description, the "summary", and the "body". The following example has only a "summary", as it consists of a single paragraph only, therefore the "full" property has only this value as well.
/**
* Output the given `str` to _stdout_.
*/
exports.write = function(str) {
process.stdout.write(str);
};
yields:
description:
{ full: '
Output the given str to stdout.
',
summary: '
Output the given str to stdout.
',
body: '' },
Large descriptions might look something like the following, where the "summary" is still the first paragraph, the remaining description becomes the "body". Keep in mind this is markdown, so you can indent code, use lists, links, etc. Dox also augments markdown, allowing "Some Title:\n" to form a header.
/**
* Output the given `str` to _stdout_
* or the stream specified by `options`.
*
* Options:
*
* - `stream` defaulting to _stdout_
*
* Examples:
*
* mymodule.write('foo')
* mymodule.write('foo', { stream: process.stderr })
*
*/
exports.write = function(str, options) {
options = options || {};
(options.stream || process.stdout).write(str);
};
yields:
description:
{ full: '
Output the given str to stdout
or the stream specified by options.
\n\n
Options
\n\n
\n
stream defaulting to stdout
\n
\n\n
Examples
\n\n
mymodule.write(\'foo\')\nmymodule.write(\'foo\', { stream: process.stderr })\n
',
summary: '
Output the given str to stdout
or the stream specified by options.
',
body: '
Options
\n\n
\n
stream defaulting to stdout
\n
\n\n
Examples
\n\n
mymodule.write(\'foo\')\nmymodule.write(\'foo\', { stream: process.stderr })\n
' }
Dox also supports JSdoc-style tags. Currently only @api is special-cased, providing the comment.isPrivate
boolean so you may omit "private" utilities etc.
/**
* Output the given `str` to _stdout_
* or the stream specified by `options`.
*
* @param {String} str
* @param {{stream: Writable}} options
* @return {Object} exports for chaining
*/
exports.write = function(str, options) {
options = options || {};
(options.stream || process.stdout).write(str);
return this;
};
yields:
tags:
[ { type: 'param',
string: '{String} str',
types: [ 'String' ],
name: 'str',
description: '' },
{ type: 'param',
string: '{{stream: Writable}} options',
types: [ { stream: ['Writable'] } ],
name: 'options',
description: '' },
{ type: 'return',
string: '{Object} exports for chaining',
types: [ 'Object' ],
description: 'exports for chaining' },
{ type: 'api',
visibility: 'public' } ]
dox supports all jsdoc type strings specified in the jsdoc documentation. You can
specify complex object types including optional flag =
, nullable ?
, non-nullable !
and variable arguments ...
.
Additionally you can use typesDescription
which contains formatted HTML for displaying complex types.
/**
* Generates a person information string based on input.
*
* @param {string | {name: string, age: number | date}} name Name or person object
* @param {{separator: string} =} options An options object
* @return {string} The constructed information string
*/
exports.generatePersonInfo = function(name, options) {
var str = '';
var separator = options && options.separator ? options.separator : ' ';
if(typeof name === 'object') {
str = [name.name, '(', name.age, ')'].join(separator);
} else {
str = name;
}
};
yields:
tags:
[
{
"tags": [
{
"type": "param",
"string": "{string | {name: string, age: number | date}} name Name or person object",
"name": "name",
"description": "Name or person object",
"types": [
"string",
{
"name": [
"string"
],
"age": [
"number",
"date"
]
}
],
"typesDescription": "string|{ name: string, age: number|date }",
"optional": false,
"nullable": false,
"nonNullable": false,
"variable": false
},
{
"type": "param",
"string": "{{separator: string} =} options An options object",
"name": "options",
"description": "An options object",
"types": [
{
"separator": [
"string"
]
}
],
"typesDescription": "{ separator: string }|undefined",
"optional": true,
"nullable": false,
"nonNullable": false,
"variable": false
},
{
"type": "return",
"string": "{string} The constructed information string",
"types": [
"string"
],
"typesDescription": "string",
"optional": false,
"nullable": false,
"nonNullable": false,
"variable": false,
"description": "The constructed information string"
}
]
The .code
property is the code following the comment block, in our previous examples:
exports.write = function(str, options) {
options = options || {};
(options.stream || process.stdout).write(str);
return this;
};
The .ctx
object indicates the context of the code block, is it a method, a function, a variable etc. Below are some examples:
exports.write = function(str, options) {
};
yields:
ctx:
{ type: 'method',
receiver: 'exports',
name: 'write',
string: 'exports.write()' } }
var foo = 'bar';
yields:
ctx:
{ type: 'declaration',
name: 'foo',
value: '\'bar\'',
string: 'foo' }
function User() {
}
yields:
ctx:
{ type: 'function',
name: 'User',
string: 'User()' } }
Context matching in dox is done by performing pattern matching against the code following a
comment block. dox.contextPatternMatchers
is an array of all pattern matching functions,
which dox will iterate over until one of them returns a result. If none return a result,
then the comment block does not receive a ctx
value.
This array is exposed to allow for extension of unsupported context patterns by adding more functions. Each function is passed the code following the comment block and (if detected) the parent context if the block.
dox.contextPatternMatchers.push(function (str, parentContext) {
// return a context object if found
// return false otherwise
});
Comments and their associated bodies of code may be flagged with "!" to be considered worth ignoring, these are typically things like file comments containing copyright etc, however you of course can output them in your templates if you want.
/**
* Not ignored.
*/
vs
/*!
* Ignored.
*/
You may use -S
, --skipSingleStar
or {skipSingleStar: true}
to ignore /* ... */
comments.
Install dev dependencies and execute make test
:
$ npm install -d
$ make test
(The MIT License)
Copyright (c) 2011 TJ Holowaychuk<EMAIL_ADDRESS>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


📲 Install
🐈 AffiliCats
Find the cutest cats online!
Go
⚠ Seems like we're offline at the moment
⏳ Loading cats…
⏳
⏳
⏳ Loading offers…
🛎 Price Drop Alerts
✅ Active
Loading Deal…
Photos
⏳ Loading photos…
Reviews
⏳ Loading reviews…
Location
Latitude:
Longitude:


{{< layout}} {{$back}}
Your photo must show your head, shoulders and upper body.
To avoid shadows, stand 50 centimetres away from your plain background.
The person taking your photo needs to stand 1.5 metres away from you.


I created a box with the laser cutter by cutting out squares to then later glue them together to make a box. I created A coaster made out OF slate where I engraved the Gaelic tree of life. I also created a glass with my family Celtic knot and Gaelic words which read "Family forever".


NOW
PRESELLING
EVERYONE NEEDS
ROOM TO BREATHE
PARK HILL is a new community coming soon to Langley's Willoughby neighbourhood. This boutique collection of 2 & 3 bedroom townhomes and contemporary 1, 2 & 3 bedroom condos is located in a quiet residential area nestled against 1,200 acres of lush parkland and community trails.
Quick access to amenities means you're close to schools, shopping, restaurants, professional services and sport and rec centres.
More indoor space.
More outdoor space.
More living space.
With up to 200 square feet more than most condos and townhomes, Park Hill offers up bright, open floorplans, high quality construction and appliances as well as proximity to everything you’ll need. Shops and stores. Restaurants and cafes. Recreation centres and sports complexes.
Situated next to serene rolling parklands and a network of community trails, Park Hill’s outdoor lifestyle is just as expansive as it is inside. Looking for more? Take a long look at Park Hill.
Want room to breathe?
Time to move.
Register to receive priority viewing, exclusive development updates and information about Park Hill and Langley.
Help us get to know you.


Rajesh Kannan KC2KBY/VU3RGK
Links Home Station Equipments LOG Photos/Videos
Photos from Lighthouse Weekend


--- layout: tweet ---
Wheels down ORD. Hope I catch ✈ to CLE!
1/8/2014, 9:45:51 AM
Favs: 0
Retweets: 0


Best Offers
Check out our top-rated tours
Travel to the any corner of the world, without going around in circles.
Check out our top-rated tours
Our clients' testimonials are the best proof of our high level of service
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras tristique urna ex, vel iaculis mi molestie vitae. Aenean posuere quam a nisl luctus hendrerit. the leading tour operators. With us you can reach even the most distant corners of the world
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras tristique urna ex, vel iaculis mi molestie vitae. Aenean posuere quam a nisl luctus hendrerit. the leading tour operators. With us you can reach even the most distant corners of the world
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras tristique urna ex, vel iaculis mi molestie vitae. Aenean posuere quam a nisl luctus hendrerit. the leading tour operators. With us you can reach even the most distant corners of the world


QueenArmies Class Reference
[Example scripts (models)]
Inherits Example.
Detailed Description
Example: Peacable co-existing armies of queens.The goal of this problem is to place as many white and black queens on a chess-board without any two queens of different color attacking each other. The number of black queens should be greater than or equal to the number of white queens.
This model is based on the one presented in "Models and Symmetry Breaking for 'Peaceable Armies of Queens'", by Barbara M. Smith, Karen E. Petrie, and Ian P. Gent.
The smart version uses a custom branching implementing a heuristic from the above paper, that helps speeding up the proof of optimality.
Definition at line 53 of file queen-armies.cc.
Constant sets for attacking queens. | |
| int | pos (int i, int j, int n) |
| Position of a piece in a square board. | |
Public Member Functions | |
| QueenArmies (const Options &o) | |
| QueenArmies (bool share, QueenArmies &s) | |
| virtual Space * | copy (bool share) |
| Copying member function. | |
| void | constrain (Space *s) |
| virtual void | print (void) |
Public Attributes | |
| const int | n |
| SetVar | U |
| Set of un-attacked squares. | |
| SetVar | W |
| Set of squares occupied by white queens. | |
| BoolVarArray | w |
| The placement of the white queens. | |
| BoolVarArray | b |
| The placement of the black queens. | |
| IntVar | q |
| The number of white queens placed. | |
Classes | |
| class | QueenBranch |
| Custom branching for Peacable queens. More... |
Constructor & Destructor Documentation
|
|
Definition at line 62 of file queen-armies.cc. |
|
|
Definition at line 99 of file queen-armies.cc. |
Member Function Documentation
|
|
Copying member function. Must create a new object using the constructor for cloning. Implements Gecode::Space. Definition at line 110 of file queen-armies.cc. |
|
|
Definition at line 115 of file queen-armies.cc. |
|
|
Reimplemented from Example. Definition at line 121 of file queen-armies.cc. |
Friends And Related Function Documentation
|
|
Position of a piece in a square board.
Definition at line 187 of file queen-armies.cc. |
Member Data Documentation
|
|
Definition at line 55 of file queen-armies.cc. |
|
|
Set of un-attacked squares.
Definition at line 56 of file queen-armies.cc. |
|
|
Set of squares occupied by white queens.
Definition at line 56 of file queen-armies.cc. |
|
|
The placement of the white queens.
Definition at line 58 of file queen-armies.cc. |
|
|
The placement of the black queens.
Definition at line 58 of file queen-armies.cc. |
|
|
The number of white queens placed.
Definition at line 60 of file queen-armies.cc. |
The documentation for this class was generated from the following file:
- examples/queen-armies.cc (Revision: 3783)


home
Github
Slides
Piazza
Contacts
Find Us
Address:
Room: 117
Building:Photonis Center
8 St. Mary's St
Boston, MA
Phone:
+1<PHONE_NUMBER>
Email:
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>Contact Form
×
Modal title
asfasfasf
*This field is required.
*This is not a valid name.
*This field is required.
*This is not a valid email.
*This field is required.
*This is not a valid phone.
*This field is required.
*The message is too short.
clear
send


Concepts - Visual Coordinates in Qt Quick
Item Coordinates
The default system of visual coordinates used in Qt Quick is item coordinates. This is a cartesian coordinate system with (0,0) at the top left corner of the item. The x-axis grows to the right and the y-axis grows downwards, so that the bottom right corner of the item is at coordinates (width, height).
An individual item's position is specified in terms of its parent's coordinate system. This means that reading x,y values from non-sibling items may require conversion to convert them into the same coordinate system. Scene coordinates are often used as the intermediate coordinate system when this occurs.
Scene Coordinates
Scene coordinates are the coordinates where (0,0) corresponds to the top left corner of the window the scene is currently being rendered. Scene coordinates are usually the same as the item coordinates of the root item in the window.
You can convert from item to scene coordinates using the functions on the item whose coordinate system you are interested in. See Item::mapFromItem and Item::mapToItem for converting to scene coordinates, or another item's coordinates.
Worked Example
The below QML code creates an arrangment of squares, with dots added for identification of points:
Rectangle { width: 200 height: 200 color: "red" Rectangle { x: 100 y: 100 width: 100 height: 100 color: "blue" Rectangle { width: 50 height: 50 color: "green" } } }
In this image the black dot is positioned at (0,0) within the item coordinates of the red rectangle. If the red rectangle was the root item of the scene, then the black dot would also be positioned at (0,0) in scene coordinates.
The blue rectangle is positioned at the white dot, (100,100), relative to the red rectangle's top left corner.
The green rectangle has no x,y specified, so its position defaults to (0,0). Because it is at (0,0) in the coordinates of its parent, the blue rectangle, it is positioned at the top left corner of that rectangle. This is the same point as the white dot at (100,100) in the coordinates of the red rectangle.


Home
(current)
Loading ...
Free Code Camp
Loading ...
AWS
Loading ...
Kyle Shevlin
Loading ...
Barbarous King


There is {{listeDepartments.length}} active departments in your university
No active departments found in your app, start by uploading some


Neruga Chief Tantus:
Tejakar Paagrio! Praise the name of the Flame! This Immortal Plateau has been our sacred ground from ancient times, but while I, Tantus, was living among the humans of the Kingdom of Elmore, foreign invaders and Orc traitors brought disgrace to this land!
Now I am back, and I will not forgive those who disgraced our sacred place!
Ask about foreign invasions
Ask about the Kingdom of Elmore
Quest


|
iDreamSky Game Engine
v1.0.0
|
公開方法(Public Methods) | |
| Stack () | |
| Stack Constructor. 更多... | |
| ~Stack () | |
| Stack Destructor. 更多... | |
| T & | push () |
| push an element at the top of the Stack 更多... | |
| T & | pop () |
| remove an element from the top of Stack 更多... | |
| T & | top () |
| Get the Stack Top item. 更多... | |
| int | length () |
| Get the size of the Stack. 更多... | |
| bool | full () |
| Check if the Stack is fulled. 更多... | |
| void | clear () |
| Clear the Stack. | |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
push an element at the top of the Stack
|
inline |


2018.09 - Present
San Jose, California
Northeastern University
Candidate for a Master of Science in Computer Science
Light, Truth, Courage.
Related Courses
Program Design Paradigms, Database Management Systems, Algorithms, Web Development
San Jose, California
Light, Truth, Courage.
Related Courses
Program Design Paradigms, Database Management Systems, Algorithms, Web Development
Shanghai, China
Pursue what we have not been taught, and practice what we are going to teach.
Related Courses
Theoretical Foundation and Complexity Analysis, Tools of Software analysis and verification, Operation and Optimal Method
Taiyuan, China
Seek the truth and kindness; respect and emulate the excellent.
Related Courses
Java Programming, Operating System, Principles of Computer Composition, Data Structures and Algorithms, Database Theory, Data Communication and Computer Network, Discrete Structure, Programming Design Basics


TOMORROW NEVER DIES A film review by Lax Madapati Copyright 1997 by Lax Madapati
On the SuperNova scale: ***/*****
Brosnan is back in Bond 18 `Tomorrow Never Dies', a much better follow-up to the awful `Goldeneye'. This time he fights a megalomaniac media mogul Elliot Carver, devilishly played by Jonathan Pryce. The plot involves Bond's bid to thwart Carver's attempt to trigger a war between the UK and China by provoking each side through manipulation of Global Positioning System (GPS) satellites with the help of his army of private mercenaries and an Indian software wizard Henry Gupta. The payoff to Carver: exclusive media coverage rights from China, the one prize that has so far eluded him in his quest for world domination in media coverage.
The film's spectacular (and mandatory) pre-title action sequences involve Bond's escape from a Russian border area that serves as a conduit for illegal arms sale, before it is totally destroyed. After the title sequences, which for the first time in the Bond franchise history, do not seem to have been designed by the great Maurice Binder, we are introduced to Carver's wife, Paris Carver (Teri Hatcher) at Elliot Carver's lavish party to unveil his global media network. Paris also happens to be Bond's ex-flame who still has enough feelings for him to put her life in jeopardy. Enter Michelle Yeoh as Wai Lin at the same event, a Chinese secret agent posing as an aspiring reporter. Paris' character does provide an opportunity for some tender moments of love but with her short shrift, the film shifts into maximum overdrive. In continuing the recent trend of mind-numbing action and violence in the Bond films, we are dragged through various stunts, chases and killings that have degraded the Bond films to the level of routine action fare and Bond himself to a one-man death machine. Throughout this process, Bond seldom uses his intelligence to get out of tight situations and instead relies on his new issue Walther and some gadgets fitted into his new BMW by the ever-charming Q (Desmond Llewelyn). We are continuously made to wonder if Bond transformed himself from a suave, witty and intelligent spy to a sharp shooting fist fighter.
Fortunately, the body count is not as much as in `Goldeneye' as thanks to Zorro, the director of brutal and sadistic violence scenes Martin Campbell (No Escape) has left the Bond series. First-time Bond director Roger Spottiswoode (whose only remarkable film to date is the average `Shoot to Kill') does not display much understanding of what a Bond film should be and instead seems to be content working off the mediocre and hackneyed script that Bruce Feirstein (`Goldeneye') gave him after umpteen rewrites. Acting, cinematography and editing are adequate but production design leaves a lot to be desired. Everything looks too modern and cold and the opulence and majesty that marked the earlier Bond entries (thanks to Ken Adam and Peter Lamont) is gone. Even the colors in the film look faded out and something seems to be lacking in the negative processing. If Lamont is good enough to be chosen by someone of the stature of James Cameron for his epic `Titanic' (which also opened today!), why was he not retained for this movie? Samantha Bond is back as the bitter and caustic M and once again does some lip service to political correctness that marks this decade. Product placement is not too loud and obvious as I feared. Bond's globe trotting is kept to a minimum - Germany, the U.K. and Thailand. Location scouting seems to have been done by some really lazy people as save for some aerial shots of the sea, there is nothing worth mentioning.
I deliberately saved the best for last, a topic most film critics don't even comment on - the film's score. After Goldeneye's success, UA tried to bring back the great John Barry to score this film but negotiations failed, reportedly due to UA not agreeing to pay Barry his asking composer fee and not giving him any creative control in composing the title song with the artist of his choice. After that, two names featured the most in UA's quest for a replacement - James Newton Howard and David Arnold. As things worked out, Arnold was chosen to score this film and boy, does he deliver! His score is absolutely delicious and is the best thing about this film. He not only scores some cues in the wonderful style of Barry (pre-title sequences titled `White Knight' are reminiscent of Barry's score for `From Russia with Love' and the Hamburg scenes remind me in places of the score for `Goldfinger') but also brought back the 007 theme with even Barry stopped using in the `80's as he felt the theme became somewhat dated. Arnold also puts his own touch to the score in parts like `Dr. Kaufman' and `Station Break'. He stops short of using a variation of the main titles song (or even the end titles song) as his love theme but instead composed a lovely little theme that should have been used a little more in the film. As a bonus, he also composed the wonderful KD Lang song that was used for the end titles, `Surrender', which remains very true to the Bond franchise and should have been used for the main titles. It very much reminds me of Bassey's wonderful `Goldfinger'. The title song is the worst ever done for a Bond film and is sung hideously by Sheryl Crow, clearly demonstrating to us that she does not have the vocal range that is demanded by a Bond song. It is obvious that Arnold had nothing to do with the Crow song. Arnold also did some covers of classic Bond music before doing the score for this film and understands very well what a Bond score ought to be. He is a truly worthy successor to John Barry.
*********SPOILERS FOLLOW**********
The plot of the film involving total world media domination by triggering a war between the UK and China is derived from two sources - the earlier Bond film `The Spy Who Loved Me' that has the villain stealing weapons from two countries to use them against each other and trigger a nuclear war. The villain Elliot Carver is a replica of that in the 1982 book by Irving Wallace, `The Almighty', in which a newspaper baron "creates" news and is the first to always publish it in his newspapers, twisting destiny to suit his own needs and desires. In addition, `Spy' also provides this film with another element - that of rivals Bond and Wei Lin overcoming their own rivalry to fight a common enemy. Stamper is straight out of `The Living Daylights" Necros. We also have Joe Don Baker from the same film playing another character in this film.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Mountain Counseling & Training provides services to only clients with IEHP or Medicaid.
If you do not have either insurance, please contact us at<PHONE_NUMBER>.
Parent/Guardian Form
Mountain Counseling & Training provides services to only clients with IEHP or Medicaid.
If you do not have either insurance, please contact us at<PHONE_NUMBER>.


Chicago Crime Searcher (Project 1)
This app searches for crimes in Chicago using your filters.
Lane Tech Bus Tracker (Project 2)
This project is an app that uses the CTA bus tracker API to find buses near Lane Tech, for students who take the bus after school.
Air Horn (Lab 8)
When the button is clicked, it plays an air horn noise. This app can be used to annoy your friends, peers, and teachers.
Tip Calculator
This app calculates how much your tip is, if you enter your check money, and how much percent tip you want to give the person.
Chicago Car Finder
Enter your license plate in this app, if your car is in Chicago, and it will be tracked using the City of Chicago API.
Canvas Basic Animation
This page creates a randomly sized circle, with a random color and bounces it on the screen. This was a simple animation that helped increase my knowledge of random number generators, and animating using the canvas.
Canvas Scrolling Game
This page contains a canvas that functions as a game. The player is the car, watch out for the children and collect gas. You can only move into the four lanes provided.


Installation¶
The project¶
You can install the project by pip
pip install git+https://github.com/git-ogawa/raspi-statmon.git
MySQL¶
The project uses MySQL, so install them with apt
sudo apt install mysql-server
you maybe can’t install mysql in the version of your machine. In that case, try to install mariaDB instead.
sudo apt install mariadb-server-10.0
pandas¶
The prohect uses pandas
but the installation by pip doesn’t seem to be working in raspberry pi OS. Thus, Install by following with apt.
sudo apt install python3-pandas
Uninstallation¶
You can uninstall the application by pip
but the database and data files need to be deleted before doing that. To do this is to execute rstatmon --remove
. Typing yes
to the prompt delete the files as follows.
$ rstatmon --remove
Do you really remove the all data? (yes/[no]):yes
Deleted raspi database
Database delete sucessfully completed.
Delete /home/username/.local/lib/python3.8/site-packages/rstatmon/static
Delete /home/username/.local/lib/python3.8/site-packages/rstatmon/templates
Delete /home/username/.local/lib/python3.8/site-packages/rstatmon/data
Delete /home/username/.local/lib/python3.8/site-packages/rstatmon/config
Delete process sucessfully completed.
Then, uninstall the app by pip.
pip uninstall rstatmon


Dear friend, My name is Barrister John Mensah, 41 years Ghanaian married with Five Children. I work as an administrative Secretary/Attorney with GLOBAL SECURITY COMPANY (ltd) Accra Ghana. I joined the services of this company in 1991. I got the information concerning you and your company from our Chamber of Commerce here and after due consultation, I decided to contact you believing that by the grace of God that you will be my partner in this business. I have worked with this company for over 12 years, within this period of time I watched with meticulous precision on how African Head of State and government functionaries have been moving huge sums of money (Dollars, Pound Sterling, French Franc, Cash)with the aid of their foreign partners abroad. They bring in these consignment of money cash and secretly declare the content as jewelries, Gold, Precious Stones, Family Treasure, Documents,etc. Mobutu Sese Seko of Zaire, Fodey Sankoy of Sierra Leone, FelixHouphet Buigny of Ivory Coast, Konnan Bede of Ivory Coast, etc. These people have at one time or the other depositedconsignments withus and their foreign partners, relatives and Next of Kin are Claiming most of these consignment and a lot more are laying here unclaimed for as much as 7 years, as no available information to anybody except the depositors, and most of them are dead. Since the inception of the year 2003, GLOBAL SECURITY COMPANY LTD Management changed the procedure of claiming of consignments. As soon as you are able to produce all the secret information as contained in the secret file of the company as regard the consignment, it will be released to you upon demand. From our records, more than 10 consignments belonging to these people has been claimed in the past six months and this is why I am seeking for your co-operation and assistance. Mr. Francis Carden is a Zimbabwean, and he work with one of the top ministers of President Robert Mugabe who was in charge of the campaigning for re-electing Mr. Mugabe into office in their last election. He deposited this consignment in 1999 after absconding with the money 35.5 million United State Dollars ($35.5m USD). Unfortunately, Mr. Francis Carden died in Kenyan aircraft that killed all on board in 2000. Since his death, no one knows about this transaction with Global Security Company Ltd except me who acted as company attorney when he deposited the consignment. I have finished every arrangement for you to come and claim the consignment as the next of Kin to Mr. Francis Carden. The procedure is very simple: - Apply officially to the Director of operation Global security company pty Accra - Ghana, for the release of consignment No.GSS/15031964. They will demand for some documents and the security code of the consignment, you will call on me to supply you with every detailed Information as regard the consignment. As soon as they have confirmed it to be correct, the company will invite you for the collection. Nobody will ever know that I am involved in the deal , I suggest upon conclusion, we share it on the Ratio of 50%-40%and 10% will go for humanitarian service ie motherless babies home, more also you will make an arrangement on investments that I will invest my money in your country. I assure you that this business is very secure and risk free. Please, if you are not interested on this proposal, kindly let me know. Thanks Barrister John Mensah


This example uses the jquery-confirm plugin, which is maintained independantly from Fancytree.
jquery.fancytree.js project home Link to this page Example Browser View source code


Toggle navigation
Home
About
Projects
Learn
Bookshelf
Newsletters
Podcasts
Open Questions
My Newsletter
Coming Soon
My Podcast
Coming Soon
My Courses
Coming Soon
My Blog
Coming Soon
List of Lists
Podcasts
Here's an exhaustive list of podcasts I listen to.
(in alphabetical order) /
**
's indicate favorites
16 Minutes News by a16z
50 Things That Made the Modern Economy
80,000 Hours Podcast with Rob Wiblin
99% Invisible
a16z Podcast
**
Aaron Renn Podcast
Absolutely Mental
Acquired
American Optimist
Anatomy of Next
**
ANTIQUITAS
Astral Codex Ten Podcast
BiggerPockets Real Estate Podcast
CoinTalk
Conservative Curious
Conversations with Tyler
**
Crazy Wisdom
Crazy/Genius
Danger Close with Jack Carr
Epicenter - Crypto Podcast
Foundering
FoundMyFitness
FYI - For Your Innovation
Good For You
Google Cloud Platform Podcast
Hello Operator
Hidden Brain
How I Built This with Guy Raz
In Our Time
Invest Like the Best with Patrick O'Shaughnessy
**
KUT - Two Guys on Your Head
**
Lex Fridman Podcast
**
Making Sense with Sam Harris
**
Masters in Business
Masters of Scale with Reid Hoffman
Microsoft Research Podcast
Modern Finance
My First Million
NASJAQ FVTRISM
Naval
**
North Star Podcast
Odd Lots
Other Life
Our Ludicrous Future
Paradox Podcast
**
Penn's Sunday School
Planet Money
Problematic
Product Hunt Radio
Radically Pragmatic, a podcast from the Progressive Policy Institute
Radiolab
Rationally Speaking Podcast
**
Reimagine with Eric Schmidt
Reply All
Rework
Science Friday
Security Now (Audio)
Something You Should Know
StarTalk Radio
Starting Greatness
Startup Stories - Mixergy
storytelling with data podcast
Stuff You Missed in History Class
Syntax - Tasty Web Development Treats
Tales from the Crypt: A Bitcoin Podcast
The Adventure Podcast
The Joe Rogan Experience
**
The Knowledge Project with Shane Parrish
The Long Game with Mehdi Yacoubi
The Peter Attia Drive
The Pitch
The Portal
**
The Side View
The Skeptics' Guide to the Universe
The Tim Ferriss Show
**
The Twenty Minute VC: Venture Capital | Startup Funding | The Pitch
ToKCast
Trade Talks
Translation
Unchained
Unpacking Impact
Village Global's Venture Stories
**
Wiser Than Yesterday


Brandenberg premier: Any support for Tesla will be in accordance with EU rules
BERLIN (Reuters) - The premier of the Brandenburg state that surrounds Berlin said on Wednesday any support for U.S. electric vehicle pioneer Tesla (TSLA.O) - which has said it will build its first European factory near Berlin - would be in accordance with EU rules.
“We’re operating within the framework of the European Union’s state aid rules,” Dietmar Woidke told regional broadcaster rbb.
“That applies to all European countries - that’s our framework. We’ll of course do our part to create good conditions for Tesla within these possibilities,” he added.
Economy Minister Peter Altmaier said earlier on Wednesday that there had been no discussion yet of German government subsidies for Tesla.


A place for sport science, strength and conditioning, and education
Chris Bailey is a Clinical Assistant Professor in the Kinesiology, Health Promotion, and Recreation Department at the University of North Texas. He is a Certified Strength and Conditioning Specialist (CSCS) and a Registered Strength and Conditioning Coach (RSCC) through the National Strength and Conditioning Association (NSCA).
At UNT, Chris teaches courses in athlete monitoring, biomechanics, quantitative analysis, quantitative procedures, strength and conditioning, and exercise test and prescription.
His research focuses on athlete monitoring and performance analytics, applied strength and conditioning, sport biomechanics, and bilateral strength asymmetry. He has published and has presented on the previously mentioned topics at the national and international levels.
PhD in Sport Physiology and Performance, 2014
East Tennessee State University
MEd in Kinesiology, 2009
Georgia College and State University
BS in Exercise Science, 2006
Georgia College and State University
The purpose of this review is to discuss many of the statistical issues faced by practitioners as well as provide best practices recommendations.


Nintendo Has Sold Over Ten Million Switch Consoles (Including Switch Lite) In Japan As Of November 4
by Brian AshcraftNintendo has sold over ten million Switch consoles (including Switch Lite) in Japan as of November 4. On November 15, Pokémon Sword and Shield will be released, so yes, that number will go up!


Travel Planner
About Us
Contact Us
Swing by for a cup of coffee, or leave us a message:
First Name
Last Name
Subject
Message


Empowering Future Biologists
With learning styles for every student
With learning styles for every student
Choices of videos explaining Biology in different teaching methods.
Incentivise future scientist by rewarding them for learning.
Study science on the go using your mobile phone.


Starting your case off right is critical. Our experience ranges from starting small cases with single custodians to large-scale cases with hundreds of custodians residing in offices across the globe. Our proven process allows us to put you on the right path, saving you time and money.
An essential step in managing your case is coming to an early agreement with the opposing party on a variety of discovery related topics. Through our years of experience, we have developed an effective strategy for smoothing the conversation no matter how adversarial the relationship is with the opposing side. We have successfully developed checklists and technical specs to help manage these sometimes difficult conversations. With the advent of new rules demanding heightened focus on proportionality, the ability to go toe-to-toe with your adversary will be a key to your success. We have the technical skills to get you there.
The manner of collection of your client's documents is an important early decision. We have the knowledge and experience to guide you in making the right choices that are both defensible later in the case and financially sensible. We have developed relationships that allow us to confidently collect your documents right the first time.
This is where the costs can get wildly out of control. We know how to keep these costs as low as possible, without the loss of valuable insight into your documents. We use a combination of broad keywords for early culling to advanced analytics to assist you in getting the greatest value out of your document review.
The discovery review industry has been built on, and centers around, reviewing documents in preparation for production. The existing paradigm does not take into consideration documents received from the opposing side. We have spent years building a workflow that specializes in the receipt and review of massive document populations as efficiently and expediently as possible to enable you to identify deficiencies in production and launch into the merits of the case, including depositions.
Most existing service providers treat the collection, review, and production as the end goal. Once they accomplish those tasks, the discovery process is treated as complete. We have a different point of view. Leveraging the work product of the review is the goal, using the pivotal documents uncovered in the review to your best advantage. We will guide you, through consulting, advanced categorization, and complex search strategies to help you get the documents you need to to make the most of your hard work in the early stages.


Class: Aws::DynamoDBStreams::Types::Record
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
|
Class Chain:
self,
Struct
|
|
|
Instance Chain:
self,
::Aws::Structure ,
Struct
|
|
| Inherits: |
Struct
|
| Defined in: | gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/types.rb |
Overview
A description of a unique event within a stream.
Constant Summary
Instance Attribute Summary
-
#aws_region ⇒ String
rw
The region in which the
GetRecords
request was received. -
#dynamodb ⇒ Types::StreamRecord
rw
The main body of the stream record, containing all of the DynamoDB-specific fields.
-
#event_id ⇒ String
rw
A globally unique identifier for the event that was recorded in this stream record.
-
#event_name ⇒ String
rw
The type of data modification that was performed on the
::Aws::DynamoDB
table: -
#event_source ⇒ String
rw
The Amazon Web Services service from which the stream record originated.
-
#event_version ⇒ String
rw
The version number of the stream record format.
-
#user_identity ⇒ Types::Identity
rw
Items that are deleted by the Time to Live process after expiration have the following fields:
Instance Method Summary
::Aws::Structure
- Included
| #to_hash | Alias for Structure#to_h. |
Instance Attribute Details
#aws_region ⇒ String
(rw)
The region in which the GetRecords
request was received.
# File 'gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/types.rb', line 514
class Record < Struct.new( :event_id, :event_name, :event_version, :event_source, :aws_region, :dynamodb, :user_identity) SENSITIVE = [] include Aws::Structure end
#dynamodb ⇒ Types::StreamRecord (rw)
The main body of the stream record, containing all of the DynamoDB-specific fields.
# File 'gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/types.rb', line 514
class Record < Struct.new( :event_id, :event_name, :event_version, :event_source, :aws_region, :dynamodb, :user_identity) SENSITIVE = [] include Aws::Structure end
#event_id ⇒ String
(rw)
A globally unique identifier for the event that was recorded in this stream record.
# File 'gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/types.rb', line 514
class Record < Struct.new( :event_id, :event_name, :event_version, :event_source, :aws_region, :dynamodb, :user_identity) SENSITIVE = [] include Aws::Structure end
#event_name ⇒ String
(rw)
The type of data modification that was performed on the ::Aws::DynamoDB
table:
INSERT
- a new item was added to the table.MODIFY
- one or more of an existing item's attributes were modified.REMOVE
- the item was deleted from the table
# File 'gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/types.rb', line 514
class Record < Struct.new( :event_id, :event_name, :event_version, :event_source, :aws_region, :dynamodb, :user_identity) SENSITIVE = [] include Aws::Structure end
#event_source ⇒ String
(rw)
The Amazon Web Services service from which the stream record
originated. For DynamoDB Streams, this is aws:dynamodb
.
# File 'gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/types.rb', line 514
class Record < Struct.new( :event_id, :event_name, :event_version, :event_source, :aws_region, :dynamodb, :user_identity) SENSITIVE = [] include Aws::Structure end
#event_version ⇒ String
(rw)
The version number of the stream record format. This number is
updated whenever the structure of Record
is modified.
::Aws::DynamoDBStreams::Client
applications must not assume that eventVersion
will remain
at a particular value, as this number is subject to change at any
time. In general, eventVersion
will only increase as the low-level
::Aws::DynamoDB
Streams API evolves.
# File 'gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/types.rb', line 514
class Record < Struct.new( :event_id, :event_name, :event_version, :event_source, :aws_region, :dynamodb, :user_identity) SENSITIVE = [] include Aws::Structure end
#user_identity ⇒ Types::Identity (rw)
Items that are deleted by the Time to Live process after expiration have the following fields:
- Records[].userIdentity.type
"Service"
- Records[].userIdentity.principalId
"dynamodb.amazonaws.com"
# File 'gems/aws-sdk-dynamodbstreams/lib/aws-sdk-dynamodbstreams/types.rb', line 514
class Record < Struct.new( :event_id, :event_name, :event_version, :event_source, :aws_region, :dynamodb, :user_identity) SENSITIVE = [] include Aws::Structure end


Contains three shiny applications. Two are meant to explore linear model inference feature through simulation. The third is a game to learn interpreting diagnostic plots.
| Version: | 0.1.1 |
| Imports: | shiny, shinyjs, lmtest, mgcv, methods |
| Published: | 2018-11-18 |
| Author: | Francesco Pauli (see file LICENSEMEDIA for credits on sounds and images) |
| Maintainer: | Francesco Pauli <francesco.pauli at deams.units.it> |
| License: | GPL-3 |
| NeedsCompilation: | no |
| Materials: | README |
| CRAN checks: | lmviz results |
| Reference manual: | lmviz.pdf |
| Package source: | lmviz_0.1.1.tar.gz |
| Windows binaries: | r-devel: lmviz_0.1.1.zip, r-release: lmviz_0.1.1.zip, r-oldrel: lmviz_0.1.1.zip |
| OS X binaries: | r-release: lmviz_0.1.1.tgz, r-oldrel: lmviz_0.1.1.tgz |
Please use the canonical form https://CRAN.R-project.org/package=lmviz to link to this page.


AuthenticationTokens
public struct AuthenticationTokens
Represents authentication tokens associated with a given user.
-
Signed ID token carrying identity claims.
Declaration
Swift
public let idToken: String
-
Signed access token used for API access that does not require details of the user’s identity..
Declaration
Swift
public let accessToken: String
-
Refresh token used for refreshing ID and access tokens.
Declaration
Swift
public let refreshToken: String
-
Lifetime of the ID and access tokens in seconds.
Declaration
Swift
public let lifetime: Int


Seroprevalence of anti-Lassa Virus IgG antibodies in three districts of Sierra Leone: A cross-sectional, population-based study
Emily J. Engel, Donald S. Grant, and John S. Schieffelin


Pixels
In this article I will be covering a topic that many of us find complicated at first and prefer to postpone its learning, but trust me, it is worth investing your time on this topic, the relative units.
HTML has been around for 26 years, and pixels have been around as a layout measuring unit since then. Pixels did not came out with the web, but the pixels we use in the web are not exactly the same pixels we knew from before. With that in mind, I thing we should question our trust on them.
Pixels are not absolute
Not particularly the ones on the web. In fact, their size vary based on multiple factors: screen resolution, browser renderer, and device renderer, '1px' is not the same distance every time your UI loads. Knowing that: how far can we rely on an "absolute unit" that is not absolute?
Font based units
The containers and boxes are sized relatively to the text. We want our content to be placed surrounded by the boxes and borders we set.
Luckily, CSS provides us with some good tools to solve this problem, I will only mention the 3 main ones:
-
ch: a typographic measure based on the length of the character 0 (zero).
-
em: a typographic measure based on the length of the character 'm'.
-
rem: a web measure based on the 'em' of the root element.
'em' vs 'ch'
Now, we need to choose which one gets the job done in a more and consistent way. In order to choose, it's required first to understand how each of them are defined.
In CSS, the 'em' is a general unit of length related directly to font size. We use it to define widths, heights, padding, margins and other measurements in both horizontal and vertical directions – something typographers with a traditional background may find surprising. The 'em' unit can also be used to define the font size itself.
The 'ch' unit can be useful if you want to set lengths or sizes which relate directly to the width of the font.
The 'm' and its width
Probably the first question your are asking yourself is, "Why the 'm' ?" When creating a new typeface, designers use (or used) a squared block (kerning) which served as reference to assure each character was proportionally designed in comparison to the other ones. The 'm' is the only character in our entire alphabet that would touch the left and right boundaries of this box. So, '1em' is actually the maximal width of a character, regardless of which font-family it belongs to.
Absolute zero
The number zero is normally the average width of all characters (alphanumeric) in a typeface. The 'ch' is, therefore, an estimation of the character length for a specific font, hence its name (character).
Because the zero is an average, it becomes a more reliable unit than 'em'. On the event of a font-family changing for the content, the '5ch' will continue to be the length of 5 characters, whilst '1em/1rem' may change for more or less than before. In a nutshell, '1ch' in Times New Roman displays a different distance than '1ch' in 'Helvetica' which would be also different than in a monospace typeface.
Using percentages
The use of percentages is very common and powerful, but can also be tricky. Depending on the CSS property which you're adding a value to, the percentage relates to a different measure. For padding and margin, for example, the percentage relates to the width of the containing box (regardless if it is vertical or horizontal padding/margin).
.wrapper {
width: 10rem;
height: 3rem;
}
.child {
padding-top: 10%; /* 1rem */
margin-top: 10%; /* 1rem */
}
Also, if for example you're intending to set a percentage value to width, height, and its derivatives, the fraction will correspond to its container, so height: 50% is half the height of the elements container (given it has a measurable length at parsing time).
.parent {
width: 40rem;
height: 20rem;
}
.child {
width: 50%; /* 20rem */
height: 70%; /* 14rem */
}
To some extent, I like to think '%' as the 'em' equivalent of viewport sizes. They are both extremely powerful, but they also require a level of understanding on how CSS rendering will work and a more strategic view of how the UI elements will integrate and interact with each other because they depend on the context where they are inserted.
Viewport based units
Viewports, on the other hand, are much more intuitive. It is part of CSS3, so they are quite new, though their learning curve helps a lot on advocating towards their usage.
-
vh: Viewport height. 1vh is 1% of the actual viewport's height.
-
vw: Viewport width. 1vw is 1% of the actual viewport's width.
-
vmax: Viewport max. 1vmax is 1% of the viewport's biggest dimension
-
vmin: Viewport min. 1vmin is 1% of the viewport's smallest dimension
As you may have come to realise, the viewport units do not depend on the context they are inserted into. So, to keep the comparison between units: if '%' is the 'em' of viewport, viewport units are the 'rem' .
So what should we use?
It's not actually a question of what to use, but more a question of when should we use which.
In other words, we should try to find the message on the layout we are creating, once we do that, the best unit will reveal itself as the one which is more likely to provide a reliable measure of it.
Let's go through a quick example, if you have a piece of display text-base (e.g.: a blog post), you can narrow it down your options to 'rem' , 'em' , or 'ch' . Now, does the specific element in question depends on its parent? (if yes, 'em' or 'ch' probably). Do you need it to be scalable in case you switch typefaces? (if yes, definitely 'ch' ). Of course, this situation is oversimplified, but I believe it would provide a good understanding of the topic
Remember, there is no silver bullet and do not be shy of using every resource at your disposal.