One embodiment provides a system that facilitates forwarding of packets with variable length names. During operation, the system receives a packet with a hierarchically structured variable length identifier (HSVLI) which comprises contiguous name components ordered from a most general level to a most specific level. The system performs a longest prefix match lookup by selecting an entry from a first data structure of entries. The entries indicate a name component, forwarding information for the name component, and a plurality of entry identifiers that chain an entry to another entry. If a size of the name component is less than or equal to a predetermined threshold, the system selects an entry based on the name component. If the size is greater, the system selects an entry based on a compressed key which can be a hash of the name component. The system also resolves collisions associated with the selected entry.
This Application is a continuation application (and claims the benefit of priority under 35 U.S.C. .sctn. 120) of U.S. application Ser. No. 14/570,144 entitled "CCN ROUTING USING HARDWARE-ASSISTED HASH TABLES," filed on Dec. 12, 2014, Inventors Marc E. Mosko et al. The disclosure of this prior application is considered part of the disclosure of this application and is incorporated by reference.
The subject matter of this application is related to the subject matter in the following applications: U.S. patent application Ser. No. 13/847,814, entitled "ORDERED-ELEMENT NAMING FOR NAME-BASED PACKET FORWARDING," by inventor Ignacio Solis, filed 20 Mar. 2013 (hereinafter "U.S. patent application Ser. No. 13/847,814"); U.S. patent application Ser. No. 12/338,175, entitled "CONTROLLING THE SPREAD OF INTERESTS AND CONTENT IN A CONTENT CENTRIC NETWORK," by inventors Van L. Jacobson and Diana K. Smetters, filed 18 Dec. 2008 (hereinafter "U.S. patent application Ser. No. 12/338,175"), and U.S. Pat. No. 8,243,735 (U.S. patent application Ser. No. 12/638,478, entitled "SYSTEM FOR FORWARDING PACKETS WITH HIERARCHICALLY STRUCTURED VARIABLE-LENGTH IDENTIFIERS USING AN EXACT-MATCH LOOKUP ENGINE," by inventors Van L. Jacobson and James D. Thornton, issued 14 Aug. 2012 (hereinafter "U.S. Pat. No. 8,243,735"); the disclosures of which are herein incorporated by reference in their entirety.
1. A computer-implemented method for forwarding packets, comprising: receiving, by a computer, a packet with a hierarchically structured variable length identifier (HSVLI) that comprises contiguous name components; based on determining that a size of a name component is less than or equal to a predetermined threshold, determining a first forwarding entry based on a parent identifier; if the size is greater than the predetermined threshold, compressing the name component using a first compression function to obtain a first compressed key, and determining a second forwarding entry based on the parent identifier and the first compressed key; and based on determining that the first compressed key and a second compressed key both return a same forwarding entry, performing a second compression function on the name component to obtain a third compressed key.
2. The method of claim 1, further comprising: performing a longest prefix match lookup for forwarding the packet by selecting an entry from a forwarding table of entries that indicate the name component, forwarding information for the name component, and a plurality of entry identifiers that chain a respective entry to another entry.
3. The method of claim 2, wherein the forwarding table is a hash table of entries comprised of a key and a result.
4. The method of claim 3, wherein if the size is less than or equal to the predetermined threshold, the key is based on the name component directly; and if the size is greater than the predetermined threshold, the key is based on the first compressed key.
5. The method of claim 2, further comprising: for each name component, beginning with a name component at a most general level, selecting the entry based on the parent identifier, wherein the plurality of entry identifiers includes a parent identifier and an entry identifier, and, for each subsequent name component, the parent identifier of the selected entry corresponds to the entry identifier of an entry corresponding to the name component of a previous most general level.
6. The method of claim 2, further comprising: determining a string identifier for the second forwarding entry; retrieving a name component from the forwarding table based on the string identifier; and comparing the name component of the HSVLI with the name component from the forwarding table.
7. The method of claim 1, further comprising: selecting an entry in a collision table based on the third compressed key.
8. A non-transitory computer-readable storage medium storing instructions that, when executed by a computer, cause the computer to perform a method for forwarding packets, the method comprising: receiving a packet with a hierarchically structured variable length identifier (HSVLI) that comprises contiguous name components; based on determining that a size of a name component is less than or equal to a predetermined threshold, determining a first forwarding entry based on a parent identifier; if the size is greater than the predetermined threshold, compressing the name component using a first compression function to obtain a first compressed key, and determining a second forwarding entry based on the parent identifier and the first compressed key; and based on determining that the first compressed key and a second compressed key both return a same forwarding entry, performing a second compression function on the name component to obtain a third compressed key.
9. The medium of claim 8, the method further comprising: performing a longest prefix match lookup for forwarding the packet by selecting an entry from a forwarding table of entries that indicate the name component, forwarding information for the name component, and a plurality of entry identifiers that chain a respective entry to another entry.
10. The medium of claim 9, wherein the forwarding table is a hash table of entries comprised of a key and a result.
11. The medium of claim 10, wherein if the size is less than or equal to the predetermined threshold, the key is based on the name component directly; and if the size is greater than the predetermined threshold, the key is based on the first compressed key.
12. The medium of claim 9, the method further comprising: for each name component, beginning with a name component at a most general level, selecting the entry based on the parent identifier, wherein the plurality of entry identifiers includes a parent identifier and an entry identifier, and, for each subsequent name component, the parent identifier of the selected entry corresponds to the entry identifier of an entry corresponding to the name component of a previous most general level.
13. The medium of claim 9, the method further comprising: determining a string identifier for the second forwarding entry; retrieving a name component from the forwarding table based on the string identifier; and comparing the name component of the HSVLI with the name component from the forwarding table.
14. The medium of claim 8, the method further comprising: selecting an entry in a collision table based on the third compressed key.
15. A computer system for forwarding packets, the system comprising: a processor; and a storage device coupled to the processor and storing instructions that, when executed by a computer, cause the computer to perform a method, the method including receiving a packet with a hierarchically structured variable length identifier (HSVLI) that comprises contiguous name components; based on determining that a size of a name component is less than or equal to a predetermined threshold, determining a first forwarding entry based on a parent identifier; if the size is greater than the predetermined threshold, compressing the name component using a first compression function to obtain a first compressed key, and determining a second forwarding entry based on the parent identifier and the first compressed key; and based on determining that the first compressed key and a second compressed key both return a same forwarding entry, performing a second compression function on the name component to obtain a third compressed key.
16. The system of claim 15, the method further comprising: performing a longest prefix match lookup for forwarding the packet by selecting an entry from a forwarding table of entries that indicate the name component, forwarding information for the name component, and a plurality of entry identifiers that chain a respective entry to another entry.
17. The system of claim 16, wherein the forwarding table is a hash table of entries comprised of a key and a result.
18. The system of claim 17, wherein if the size is less than or equal to the predetermined threshold, the key is based on the name component directly; and if the size is greater than the predetermined threshold, the key is based on the first compressed key.
19. The system of claim 16, the method further comprising: for each name component, beginning with a name component at a most general level, selecting the entry based on the parent identifier, wherein the plurality of entry identifiers includes a parent identifier and an entry identifier, and, for each subsequent name component, the parent identifier of the selected entry corresponds to the entry identifier of an entry corresponding to the name component of a previous most general level.
20. The system of claim 16, the method further comprising: determining a string identifier for the second forwarding entry; retrieving a name component from the forwarding table based on the string identifier; and comparing the name component of the HSVLI with the name component from the forwarding table.
This disclosure is generally related to distribution of digital content. More specifically, this disclosure is related to forwarding packets in a content centric network (CCN) by using hardware-assisted hash tables in a CCN router.
The proliferation of the Internet and e-commerce continues to create a vast amount of digital content. Content-centric network (CCN) architectures have been designed to facilitate accessing and processing such digital content. A CCN includes entities, or nodes, such as network clients, forwarders (e.g., routers), and content producers, which communicate with each other by sending interest packets for various content items and receiving content object packets in return. CCN interests and content objects are identified by their unique names, which are typically hierarchically structured variable length identifiers (HSVLI). An HSVLI can include contiguous name components ordered from a most general level to a most specific level, and can contain an arbitrary number of path segments (e.g., name components) of unbounded and variable length.
In general, a CCN router maintains a forwarding table to determine how to forward a packet. The forwarding table can be a hash table where the key is based on a name component and the result contains the forwarding information for the name component. Network processors in a CCN router can increase the efficiency and speed of forwarding by providing hardware-assisted hash tables. These hardware-assisted hash tables typically restrict the key length and the result length to a fixed size. This restriction imposes limits on using these hardware-assisted hash tables for forwarding packets in a CCN, where forwarding is performed based on name components of unbounded and variable length which may be greater than the fixed length supported by the hardware-assisted hash tables.
One embodiment provides a system that facilitates forwarding of packets with variable length names. During operation, the system receives a packet with a hierarchically structured variable length identifier (HSVLI) which comprises contiguous name components ordered from a most general level to a most specific level. The system performs a longest prefix match lookup by selecting an entry from a first data structure of entries. The entries indicate a name component, forwarding information for the name component, and a plurality of entry identifiers that chain an entry to another entry. Each name component has a size. If the size of a name component is less than or equal to a predetermined threshold, the system selects an entry based on the name component. If the size is greater, the system compresses the name component to obtain a compressed key, and selects an entry based on the compressed key. In response to determining a lookup collision associated with the selected entry, the system resolves the lookup collision, thereby facilitating forwarding of packets with variable length names.
In some embodiments, in response to determining that the size of the name component is less than or equal to the predetermined threshold, the system creates an entry in the first data structure based on the name component. In response to determining that the size of the name component is greater than the predetermined threshold, the system performs a first compression function on the name component to obtain a compressed key and creates an entry in the first data structure based on the compressed key. In response to determining an insertion collision based on the created entry, the system resolves the insertion collision.
In some embodiments, the system creates an entry in a second data structure based on the name component, wherein the second data structure indicates the name component and a corresponding index. The system sets a string identifier field in the entry for the name component in the first data structure to the index from the second data structure.
In some embodiments, the system resolves the insertion collision by including a collision indicator in the created entry in the first data structure. The system performs a second compression function on the name component to obtain a new lookup key. The system also creates an entry in a third data structure based on the new lookup key, wherein the third data structure indicates the new lookup key and forwarding information for the name component.
In some embodiments, the system resolves the lookup collision by determining that the selected entry includes the collision indicator. The system performs the second compression function on the name component to obtain the new lookup key, and selects an entry in the third data structure based on the new lookup key.
In some embodiments, in response to selecting the entry in the first data structure based on the compressed key, the system determines the index of the string identifier field for the selected entry and retrieves, from the second data structure, the name component based on the determined index. The system compares the name component of the HSVLI with the retrieved name component from the second data structure.
In some embodiments, the plurality of entry identifiers includes a parent identifier and an entry identifier, wherein the entry identifier is unique for each entry in the first data structure. For each name component, beginning with a component at the most general level, the system selects the entry based on the parent identifier, wherein: for the most general level name component, the parent identifier of the entry corresponds to a predetermined initial value; and for each subsequent name component, the parent identifier of the entry corresponds to the entry identifier of an entry corresponding to the name component of a previous most general level.
In some embodiments, the first data structure is a hash table of entries comprised of a key and a result, wherein: if the size is less than or equal to the predetermined threshold, the key is based on the name component directly; and if the size is greater than the predetermined threshold, the key is based on the compressed key.
FIG. 1 illustrates an exemplary computing environment that facilitates forwarding of packets with variable length names using hardware-assisted hash tables, in accordance with an embodiment of the present invention.
FIG. 2 presents a flow chart illustrating a method for inserting entries into a forwarding table based on a hardware-assisted hash table, in accordance with an embodiment of the present invention.
FIG. 3A presents a flow chart illustrating a method for looking up entries in a forwarding table based on a hardware-assisted hash table, in accordance with an embodiment of the present invention.
FIG. 3B presents a flow chart illustrating a method for resolving lookup collisions encountered in a forwarding table based on a hardware-assisted hash table, in accordance with an embodiment of the present invention.
FIG. 4A presents a table depicting a format of a hash table data structure with keys that include a value with a size up to 9 bytes, in accordance with an embodiment of the present invention.
FIG. 4B presents a table depicting a format of a hash table data structure with keys that include a value with a size up to 21 bytes, in accordance with an embodiment of the present invention.
FIG. 4C presents a table depicting a format of a hash table data structure with keys that include a value with a size up to 41 bytes, in accordance with an embodiment of the present invention.
FIG. 4D presents a table depicting a format of a hash table data structure with keys that include a hash value for a string with a size greater than 41 bytes, in accordance with an embodiment of the present invention.
FIG. 5 presents a table depicting an exemplary forwarding hash table, in accordance with an embodiment of the present invention.
FIG. 6 presents a table depicting a format of a string table, in accordance with an embodiment of the present invention.
FIG. 7 presents a table depicting an exemplary string table, in accordance with an embodiment of the present invention.
Embodiments of the present invention provide a system that solves the problem of using hardware-assisted hash tables (which are typically restricted to fixed length keys) to forward CCN packets by mapping name components to a forwarding hash table and performing chained hash lookups in the forwarding hash table. Forwarding a CCN packet is typically based on a name associated with the packet, which can be a hierarchically structured variable length identifier (HSVLI) that includes contiguous name components ordered from a most general level to a most specific level. The present system can map the name components of an HSVLI for insertion and lookup in the forwarding hash table of a CCN router based on the size of each name component. When the size of the name component is small (e.g., less than or equal to 41 bytes), the system creates a hash table entry using a standard hash table function, where the key is the name component. When the size is big (e.g., greater than 41 bytes), the system creates the entry by first applying a compression function on the name component, and using the compressed value as the key for the hash table. The system can also insert the uncompressed name component into a separate string table at a specific index, and indicate that index in the result of the entry. If a collision occurs during insertion, the system can set a flag in the result to indicate a collision, generate a new lookup key, and create an entry in a separate table using the new lookup key.
Furthermore, the system uses the forwarding hash table to perform chained hash lookups, which determines the forwarding information for a packet. During the insertion process, the system assigns a unique index key (e.g., an entry identifier (EID)) to each result in the forwarding hash table. Each entry includes its own unique index key and also includes a pointer to the unique index key of the previous name component (e.g., a parent entry identifier (PEID)). Another method of using the forwarding hash table in a CCN router is cumulative name component hashing, described in U.S. Pat. No. 8,243,735, herein incorporated by reference.
To forward the packet, the system parses through each name component of an HSVLI, from the most general level to the most specific level, using the unique index keys of each entry result to chain the lookups in the forwarding hash table for each name component. Similar to the insertion process, the system looks up a name component by using the name directly if the size is less than or equal to a certain size, and by using the compressed key if the size is greater. If a collision occurs during lookup, the system can use the index included in the result of the entry to obtain the original uncompressed key from the separate string table, and compare the uncompressed key with the name component of the HSVLI from the packet. Furthermore, the system can detect that the result flag in the entry indicates a collision, generate a new lookup key, and perform a lookup in a separate table using the new lookup key. The result returned from the chained hash lookups, referred to as the "longest prefix match lookup," is used to forward the packet. In this disclosure, longest prefix match lookup refers to performing a lookup that returns a result matching the largest number of components, from the most general level to the most specific level, in an HSVLI. Thus, by mapping the name components in a size-based manner to the forwarding hash table (e.g., the hardware-assisted hash table maintained by a CCN router), and by chaining the hash lookups with unique index keys, the system can use hardware-assisted hash tables in a CCN router to increase the efficiency of forwarding packets.
Content Object: A single piece of named data, which is bound to a unique name. Content Objects are "persistent," which means that a Content Object can move around within a computing device, or across different computing devices, but does not change. If any component of the Content Object changes, the entity that made the change creates a new Content Object that includes the updated content, and binds the new Content Object to a new unique name.
Unique Names: A name in a CCN is typically location independent and uniquely identifies a Content Object. A data-forwarding device can use the name or name prefix to forward a packet toward a network node that generates or stores the Content Object, regardless of a network address or physical location for the Content Object. In some embodiments, the name may be a hierarchically structured variable-length identifier (HSVLI). The HSVLI can be divided into several hierarchical components, which can be structured in various ways. For example, the individual name components parc, home, ccn, and test.txt can be structured in a left-oriented prefix-major fashion to form the name "/parc/home/ccn/test.txt." Thus, the name "/parc/home/ccn" can be a "parent" or "prefix" of "/parc/home/ccn/test.txt." Additional components can be used to distinguish between different versions of the content item, such as a collaborative document. In some embodiments, the name can include a non-hierarchical identifier, such as a hash value that is derived from the Content Object's data (e.g., a checksum value) and/or from elements of the Content Object's name. A description of a hash-based name is described in U.S. patent application Ser. No. 13/847,814. A name can also be a flat label. Hereinafter, "name" is used to refer to any name for a piece of data in a name-data network, such as a hierarchical name or name prefix, a flat name, a fixed-length name, an arbitrary-length name, or a label (e.g., a Multiprotocol Label Switching (MPLS) label).
Interest: A packet that indicates a request for a piece of data, and includes a name (or a name prefix) for the piece of data. A data consumer can disseminate a request or Interest across an information-centric network, which CCN routers can propagate toward a storage device (e.g., a cache server) or a data producer that can provide the requested data to satisfy the request or Interest.
The methods disclosed herein are not limited to CCN networks and are applicable to other architectures as well. An example of a CCN architecture is described in U.S. patent application Ser. No. 12/338,175.
FIG. 1 illustrates an exemplary computing environment 100 that facilitates forwarding of packets with variable length names based on hardware-assisted hash tables, in accordance with an embodiment of the present invention. Computing environment 100 can include a device 132, which can include any content consuming device that can determine a request for content via network 130. Computing environment 100 can also include a device 134, which can include any content consuming device that can determine a request for content via network 130. Computing environment 100 can include a network 130, which can include nodes 102, 104, 106, 108, 110, 112, and 114. Network 130 can be a content centric network (CCN), and each of nodes 102-114 can be a CCN forwarder or router that contains a network processor with the hardware-assisted hash tables described in this disclosure. A user of device 132 can generate an interest packet 140 with an HSVLI 142 of "/shortname1/longname/shortname2" for a piece of content, which is received by a content producer at device 134. Device 134 can return a content object 144 fulfilling interest 140, along a reverse path as interest 140. Interest 140 and content object 144 may pass through various intermediate routers in network 130, including a CCN router at node 102 ("CCN router 102"). CCN router 102 maintains a forwarding hash table 150 which uses specific hardware included in the processor of router 102.
Forwarding hash table 150 can include forwarding information for HSVLI 142 of "shortname1/longname/shortname2" by listing entries with a hash key 160 and a result 170. Forwarding hash table 150 can contain entries 152, 154, and 156. For short name components (e.g., less than or equal to 41 bytes), CCN router 102 can use the name component directly in the hash key, as in entry 152 with a value of "shortname1," and in entry 156 with a value of "shortname2." For long name components (e.g., greater than 41 bytes), CCN router 102 can first compress the name component by performing a compression function on the name component to obtain a compressed key, K.sub.c, and use that compressed key K.sub.c in the hash key, as in entry 154 with a value of "hash(longname)." The compression function can be based on a hash function, a dictionary method, or any other known method. Entry 154 can also include a string identifier (SID) field that indicates the index to an entry in separate string table that stores the original, uncompressed "longname" string. CCN router 102 detects and handles insertion and lookup collisions as described in relation to FIGS. 2, 3A, and 3B. In some embodiments, forwarding hash table 150 includes one table for short name components (e.g., entries 152 and 156) that does not include an SID and another table for long name components (e.g., entry 154) that does include an SID. Compressed and uncompressed keys can be stored in different tables, e.g., corresponding to the data structures shown in FIGS. 4A-4C for uncompressed keys and FIG. 4D for compressed keys. Entries in forwarding hash table 150 can also include a bit in the key to indicate whether the key is compressed or uncompressed.
Furthermore, CCN router 102 forwards packet 140 by performing chained hash lookups in forwarding hash table 150 to determine the longest prefix match for HSVLI 142. CCN router 102 computes the key for the first name component ("shortname1"). Because the first name component is no longer than a threshold, it uses an uncompressed key K.sub.1 equal to a PEID concatenated with the literal name component (e.g., hash key 160 of entry 152). The system looks up K.sub.1 in the uncompressed key hash table. The hardware-assisted hash table will then produce the corresponding result. If a match is found based on K.sub.1, the results will contain an EID and corresponding forwarding information for the name (e.g., result 170 of entry 152). The system then proceeds to look up the next name component ("longname"). Because this name component is longer than a threshold, it computes a compressed key K.sub.2 equal to a PEID concatenated with a hash of the name component (e.g., hash key 160 of entry 154). In this case, the PEID is the EID returned from K.sub.1. The system looks up K.sub.2 in the compressed key hash table. The hardware-assisted hash table will then produce the corresponding result. If a match is found based on K.sub.2, the results will contain an EID and corresponding forwarding information for the name (e.g., result 170 of entry 154). The EID can be a small number, efficiently and uniquely compressing the previous key. The system continues these chained hash lookups for each subsequent name component, and the result returned from the most specific level name component ("shortname2") is the longest prefix match (e.g., forwarding information of result 170 for entry 156).
FIG. 2 presents a flow chart illustrating a method 200 for inserting entries into a forwarding table based on a hardware-assisted hash table, in accordance with an embodiment of the present invention. During operation, the system determines a packet with an HSVLI (operation 202). The system parses through the HSVLI in order (e.g., by each name component from the most general level to the most specific level). The system determines the length of the current name component (operation 204). If the length is less than or equal to a predetermined size (e.g., 41 bytes) (decision 206), the system creates an entry in the hash table using the name component directly (e.g., the original, uncompressed string) (operation 208). The key for the entry can be the Parent Entry Identifier (PEID) concatenated with the hash of the name component, while the result for the entry can include the unique Entry Identifier (EID) assigned by the control plane. For each name component, the PEID is set to an initial value of "0" and is updated during the lookup process such that the PEID is set to the EID of the lookup from the previous name component, as described below in relation to FIG. 3A. The system then determines if any name components remain to be processed (decision 224). If there are no name components left, the operation returns. If more name components remain to be processed, the system moves to the next name component (operation 226), and returns to operation 204 to begin the insertion process for the next name component.
If the length is less than or equal to a predetermined size (e.g., 41 bytes) (decision 206), the system compresses the name component by, e.g., hashing the name component, to obtain a compressed key (K.sub.c) (operation 212). The system creates an entry in the hash table using the compressed key, K.sub.c (operation 214). If the system does not detect a collision upon inserting the entry based on the compressed key (decision 216), the system inserts the original, uncompressed string into a string table at a specific index, and includes a string identifier (SID) in the result of the entry in the forwarding table with a value set to the specific index value (operation 222). The SID is a pointer to a table storing the uncompressed key value. If the system does detect a collision upon inserting the entry based on the compressed key (decision 216), the system sets a result flag in the entry to indicate a collision (operation 218). The system then generates a new lookup key and creates an entry in a collision table using the new lookup key (operation 220). The system performs operation 222, as described above. Subsequently, the system determines whether any name components remain to be processed (decision 224), and if any name components do remain to be processed, moves to the next name component (operation 226) to begin the insertion process for the next name component (operation 204).
FIG. 3A presents a flow chart illustrating a method 300 for looking up entries in a forwarding table based on a hardware-assisted hash table, in accordance with an embodiment of the present invention. During operation, the system receives a packet with an HSVLI (operation 302). The system parses through the HSVLI in order (e.g., by processing each name component from the most general level to the most specific level), obtaining lookup entry results for each name component, and storing each matched result. The matched result for the most specific level name component is the longest prefix match and contains forwarding information for the packet. The longest match, in terms of the number of name components, is considered the best because it is the most specific. The system determines the length of the current name component (operation 304). If the length is less than or equal to a predetermined size (e.g., 41 bytes) (decision 306), the system looks up the value in the forwarding table using a key based on the PEID and the name component directly as a string (operation 308). If a match is not found, the system returns the match that is currently stored in temporary storage R (operation 330). If a match is found, the system stores the matched result in temporary storage R (operation 312). The matched result contains the unique EID that is used to chain the hash table lookups, as described above. The system determines if any name components remain to be processed (decision 314). If there are no name components left, the system returns the match that is currently stored in temporary storage R (operation 330). If more name components remain to be processed (decision 314), the system goes to the next name component and sets the PEID of the next name component to the EID of the current result (operation 316). Subsequently, the system returns to operation 304 to begin the lookup process for the next name component.
If the length is greater than a predetermined size (e.g., 41 bytes) (decision 306), the system compresses the name component by, e.g., hashing the name component, to obtain a compressed key (K.sub.c) (operation 318). The system looks up the value in the forwarding table using a key based on the PEID and the compressed key, K.sub.c (operation 320). If a match is not found, the system returns the match that is currently stored in temporary storage R (operation 330). If a match is found, the system determines a string identifier (e.g., index value) for the result and retrieves the entry from the string table corresponding to the index value of the string identifier (SID) (operation 324). As described above, the SID is a pointer to a table storing the uncompressed key value. The system stores the matched result in temporary storage R (operation 326). The matched result contains the unique EID that is used to chain the hash table lookups, as described above. The system determines if a collision is detected in the lookup based on the compressed key (decision 328). If a collision is detected in the lookup based on the compressed key, the operation continues as described in FIG. 3B. If no collision is detected, the system determines if any name components remain to be processed (decision 314). If there are no name components left, the system returns the match that is currently stored in temporary storage R (operation 330). If more name components remain to be processed, the system goes to the next name component and sets the PEID of the next name component to the EID of the current result (operation 316). Subsequently, the system returns to operation 304 to begin the lookup process for the next name component.
FIG. 3B presents a flow chart illustrating a method 350 for resolving lookup collisions encountered in a forwarding table based on a hardware-assisted hash table, in accordance with an embodiment of the present invention. During operation, the system determines temporary storage results R.sub.pending (operation 352), which contain the most recent lookup entry from the process depicted and described in relation to FIG. 3A. The system can determine that the entry originates from a string table (operation 354). The system compares the name component string from the packet memory of the interest to the entry from the string table (operation 356). As discussed above, the string table entry is located based on the SID included in the result, where the SID is a pointer to a table storing the uncompressed key value. If the strings do not match (indicating that the hash entries do not match) (decision 358), the system returns the match stored in R (which contains the forwarding information for the previous name component as determined by the operations in FIG. 3A). If the strings do match (decision 358), the system stores the results from R.sub.pending in R (operation 360), and passes R back to continue processing the HSVLI (operation 362), which continues in operation 314 of FIG. 3A.
The system can also determine that the entry in R.sub.pending indicates a collision, based on a flag in the result indicating a collision (operation 366). The system generates a new lookup key (operation 368) by applying a hash function that is both different from the hash function applied to obtain the compressed key (of operation 318 in FIG. 3A) and the same as the hash function applied to generate the new lookup key upon insertion (as in operation 220 of FIG. 2). The system looks up the result in the collision table using the new lookup key (operation 370) and stores the collision table results in temporary storage R (operation 376). Subsequently, the system passes R back to operation 314 of FIG. 3A to continue processing the HSVLI (operation 362).
FIG. 4A presents a table depicting a format of a hash table data structure 400 with keys that include a value with a size up to 9 bytes, in accordance with an embodiment of the present invention. Data structure 400 represents an entry in the forwarding hash table and includes a hash key 420 and a result 422 for the entry. Hash key 420 can include a 3-byte Parent Entry Identifier (PEID) field 402, a 2-byte type field 404, a 2-byte length field 406, and a 9-byte value field 408. PEID 402 contains an identifier which is set to an initial value (e.g., 0) and is subsequently updated with a unique entry identifier from a parent name component during a lookup. Result 422 can include a 2-byte flags field 410, a 3-byte entry identifier (EID) field 412, and the forwarding entry which can include a 2-byte slot bitmap field 414 and a 3-byte route identifier (RID) field 416. Flags 410 can include a set of flags specific to the network processor (e.g., the EZChip NP4 Network Processor, herein after "NP4") and can indicate a collision in the forwarding hash table. EID 412 is a unique identifier assigned by the control plane. During operation, the system can chain lookups in the forwarding hash table by updating the PEID of a lookup after the initial lookup with the value of the EID from the previous lookup, as described in relation to FIGS. 2 and 3A. The forwarding entry (slot bitmap 414 and RID 416) allow multicast forwarding for an interest. For example, slot bitmap 414 can indicate the egress NP4 identity. Each line card can have two NP4 network processors. As a result, slot bitmap 414 indicates the egress NP4 rather than the line card. RID 416 is a unique identifier created by the control software to indicate the egress ports on each line card. The control software can create an array entry on each egress NP4 that is indexed by the RID and indicates the exact ports through which to send the interest. In some embodiments, multiple routes can share the same egress set and use the same RID, while in other embodiments, one RID is assigned for each route. Data structure 400 has a row length of 26, which includes 16 bytes for hash key 420 and 10 bytes for result 422.
FIG. 4B presents a table depicting a format of a hash table data structure 420 with keys that include a value with a size up to 21 bytes, in accordance with an embodiment of the present invention. Data structure 420 represents an entry in the forwarding hash table and includes a hash key 430 and a result 432 for the entry. Data structure 420 contains fields similar to data structure 400 (e.g., hash key 430 includes PEID 402, type 404, length 408, and a value field 428; and result 432 includes flags 410, EID 412, bitmap 414, and RID 416). The entry represented by data structure 420 contains the value 428 field for, e.g., a string with a length between 10 and 21 bytes. Data structure 420 has a row length of 38 bytes, which includes 28 bytes for hash key 430 and 10 bytes for result 432.
FIG. 4C presents a table depicting a format of a hash table data structure 430 with keys that include a value with a size up to 41 bytes, in accordance with an embodiment of the present invention. Data structure 430 includes fields similar to data structure 400 (e.g., hash key 440 includes PEID 402, type 404, length 408, and a value field 438; and result 432 includes flags 410, EID 412, bitmap 414, and RID 416). The entry represented by data structure 430 contains value 428 for, e.g., a string with a length between 22 and 41 bytes. Data structure 430 has a row length of 58 bytes, which includes 48 bytes for hash key 440 and 10 bytes for result 442.
FIG. 4D presents a table depicting a format of a hash table data structure with keys that include a hash value for a string with a size greater than 41 bytes, in accordance with an embodiment of the present invention. Data structure 430 includes a hash key 450 and a result 452. Hash key 450 includes PEID 402 and a 16-byte hash value 448, which contains the compressed key as described above in relation to FIGS. 2 and 3A. Result 452 includes fields similar to data structure 400 (e.g., flags 410, EID 412, bitmap 414, and RID 416) and further includes a string identifier (SID) field 418 which contains a pointer to a table that stores the value of the uncompressed key. In some embodiments, the SID is a collision identifier (CID) indicated by a bit in flags 410. Data structure 440 has a row length of 32, which includes 19 bytes for hash key 450 and 13 bytes for result 452.
In some embodiments (e.g., the NP4), entries in a hardware-assisted hash table are limited to: 36 bytes per entry, where the key and result together are less than or equal to 32 bytes; and 68 bytes per entry, where the key and result together are less than or equal to 64 bytes. Data structures 400, 420, 430, and 440 meet these limits. Data structure 400 represents an entry in the forwarding hash table where the value of the key (e.g., name component) is 9 bytes, and data structures 420 and 430 represent entries with values for larger strings (21 and 41 bytes, respectively). Data structure 440 represents an entry with a key of a length longer than 41 bytes, where the network processor uses a compressor or hash function to obtain a compressed key (hash 448) of 16 bytes in length. Thus, data structures 400 and 440 (26 and 32 bytes, respectively) will both fit in 32 bytes, while data structures 420 and 430 (38 and 58 bytes, respectively) will result in 64-byte entries. Note that because data structure 420 results in the same amount of memory and the same number of cycles as the larger entry of data structure 430, in some embodiments, the system may not use data structure 420. In addition, the data structures for uncompressed keys (e.g., data structures 400, 420, and 430) can include length-encoded name components. For example, data structure 400 has a TLV that includes type field 404, length field 406, and value field 408. Hence, when a literal name component is used as part of the key (e.g., "PEID+name component" in an uncompressed key), the system can accurately determine the value because the remainder of the 41 bytes will be zero padded.
FIG. 5 presents a table depicting an exemplary forwarding hash table 500, in accordance with an embodiment of the present invention. Forwarding hash table 500 includes entries 530, 532, 534, 536, and 540 that correspond to data structure 400 (e.g., a key for a string of a length less than or equal to 41 bytes). Forwarding hash table 500 also includes entries 538 and 542 that correspond to data structure 440 (e.g., a compressed key for a string of a length greater than 41 bytes). Each entry in forwarding hash table 500 includes a hash key 520 and a result 522. Hash key 520 includes a PEID 502 and a value 508, and result 522 includes a flag 510, an EID 512, a slot bitmap 514, an RID 516, and (for some entries) an SID 518.
FIG. 6 presents a table depicting a format of a string table 600, in accordance with an embodiment of the present invention. String table 600 can include a 2-byte flags field 602, a 4-byte next field 604, and a 58-byte value field 606. Flags 602 can be specific to, e.g., the NP4 processor. Next 604 can be a pointer for a string that takes multiple entries. If a string requires multiple entries, flags 602 can indicate the table in which to perform the next lookup. For example, storing a 64-byte string can use two string table entries. Value 606 can be a length-encoded string. FIG. 7 presents a table depicting an exemplary string table 700, in accordance with an embodiment of the present invention. String table 700 can include an entry 702 with an SID of "2" and a value of "longname" and an entry 704 with an SID of "3" and a value of "longname_z."
The following use case for HSVLI 552 is based on the exemplary tables presented and described in relation to FIGS. 4A-D, 5, 6, and 7, and the methods disclosed herein. During operation, a CCN forwarder or router can receive an interest with an HSVLI 552 of "/apple/pie/longname/good." The system finds the longest prefix match by looking up a first forwarding entry based on a hash key with a PEID of "0" concatenated with the short (e.g., less than or equal to 41 bytes) string "apple" of the most general level name component. The forwarding hash table returns a result with an EID of "2" (entry 532), which the system then uses as the PEID to lookup the next forwarding entry. The system looks up the next forwarding entry based on a hash key with a PEID of "2" concatenated with the short string "pie" of the next most general level name component, which returns a result with an EID of "4" (entry 536). Next, the system looks up the next forwarding entry based on a hash key with a PEID of "4" concatenated with the hash value of the long (e.g., greater than 41 bytes) string "longname," which returns a result with a collision flag set to "1" that indicates a collision, as well as an SID with a value of "2" (entry 538). The system can determine that the collision is due to two hash keys resulting in the same forwarding entry (e.g., hashing to the same bucket). The system can perform a new hash function on the uncompressed key to obtain a new hash key, use that new hash key to obtain the forwarding entry result in a separate collision table, and return that value to as the result for entry 538. In another example, a lookup on an HSVLI 550 of "/cherry/pie/longname z" would result in a chained hash lookup (based on PEIDs chained to previous EIDs) resulting in entry 530, entry 534, and entry 542. Upon determining that a collision flag in entry 542 is set to "1" (indicating that the hash of the name component "longname_z" from HSVLI 550 is the same as the hash of the name component "longname" from HSVLI 552), the system performs the new hash function as described above to obtain a new hash key and uses the new hash key to obtain the appropriate forwarding entry result from the separate collision table.
Additionally, the system can determine that the collision occurs because a name component of the HSVLI does not exist in the forwarding hash table, but its hash collides with an existing entry. The system can use the SID of entry 538 to obtain the uncompressed key stored in a separate string table, compare the obtained string with the name component of the HSVLI in the packet memory, and proceed accordingly. As discussed above, this comparison can yield a Boolean result which indicates whether or not the string from the packet memory exists in the string table (and hence is the correct entry in the forwarding hash table). For example, a lookup on an HSVLI 554 of "apple/pie/longname_tasty" yields a chained hash lookup resulting in entry 532 and entry 536. If the hash of the long string "longname_tasty" of HSVLI 554 results in the same value as the hash of the name component "longname" of HSVLI 552, but the forwarding hash table does not contain an entry for "longname_tasty," this collision cannot be detected during the insertion process. In this case, the next lookup yields entry 538 and the system determines correctness by retrieving the string indicated by SID=2 in result 538 and performing a string comparison between the retrieved string (e.g., "longname") and the string of the name component from HSVLI 554 from the packet memory (e.g., "longname_tasty"). The system determines that the two strings are not equal, indicating that even if entry 538 is returned as a match, it is an incorrect match. Subsequently, the system can return the previous match forwarding entry as the longest prefix match for HSVLI 554 (e.g., entry 536).
Returning to HSVLI 552, the system determines after the collision resolution and correctness checks that entry 538 contains the result for the correct forwarding entry (based on a hash key of "4" concatenated with the hash value of the string "longname"). Entry 538 contains an EID of "5," which the system uses as the PEID for the next lookup, which has a hash key with a PEID of "5" concatenated with the short string "good." This lookup yields a result with an EID of "6", a slot bitmap, and an RID. Because there are no further name components to be processed in HSVLI 552, the forwarding entry for entry 540 contains the longest prefix match and is used by the CCN router to forward the packet.
FIG. 8 illustrates an exemplary computer and communication system 802 that facilitates forwarding of packets with variable length names based on hardware-assisted hash tables, in accordance with an embodiment of the present invention. Computer and communication system 802 includes a processor 804, a memory 806, and a storage device 808. Memory 806 can include a volatile memory (e.g., RAM) that serves as a managed memory, and can be used to store one or more memory pools. Furthermore, computer and communication system 802 can be coupled to a display device 810, a keyboard 812, and a pointing device 814. Storage device 808 can store an operating system 816, a content-processing system 818, and data 832.
Data 832 can include any data that is required as input or that is generated as output by the methods and/or processes described in this disclosure. Specifically, data 832 can store at least: a packet with an HSVLI; a forwarding hash table, a string table, and a separate collision table as described in this disclosure; and a parent identifier (PEID) and a unique entry identifier (EID) for each entry in the forwarding hash table.
Furthermore, the methods and processes described above can be included in hardware modules or apparatus. The hardware modules or apparatus can include, but are not limited to, application-specific integrated circuit (ASIC) chips, field-programmable gate arrays (FPGAs), dedicated or shared processors that execute a particular software module or a piece of code at a particular time, and other programmable-logic devices now known or later developed. When the hardware modules or apparatus are activated, they perform the methods and processes included within them.


text:
Valerie Braithwaite
Centre for Tax System Integrity (CTSI), Microfoundations of Democratic Governance (DemGov), RegHealth
BA Hons in Psychology, PhD (University of Queensland)
E: valerie.braithwaite@anu.edu.au
Valerie Braithwaite is an interdisciplinary social scientist with a disciplinary background in psychology. She has taught in social and clinical psychology programs at undergraduate and graduate level, and has held research appointments in gerontology in the NH&MRC Social Psychiatry Research Unit and in the Administration, Compliance and Governability Project in the Research School of Social Sciences at ANU. In 1988-89, she was Associate Director in the Research School of Social Sciences, from 1989-2005 Director of the Centre for Tax System Integrity, and from 2006-2008 Head of the Regulatory Institutions Network, now RegNet School of Regulation and Global Governance, in the Research School of Pacific and Asian Studies.
Currently, Valerie Braithwaite holds a professorial appointment in the School of Regulation and Global Governance (RegNet) where she studies psychological processes in regulation and governance. The main themes are: (a) identifying institutional practices that generate defiance, undermining the individual's capacity and willingness to cooperate in core facets of social life from family and school to work and governance. Of primary interest are practices that fail to respect social values, challenge the stress and coping capabilities of individuals, induce poor shame management skills, and frustrate basic needs; (b) demonstrating how social relationships facilitate the engagement of individuals in institutional life. This work focuses on building trust, recognizing shared social values, generating hope and institutionalizing dialogue and generosity.
She regularly runs workshops and provides briefings on the adoption of responsive regulatory models by government agencies.
Democratic governance (topics of special interest: tertiary education, schools, child protection, work health and safety, taxation, welfare)
View my personal webpage
Professor Valerie Braithwaite.pdf 589.86 KB

redpajama_set_name: RedPajamaCommonCrawl


Victor Indrizzo - Drums & Perc.
John Brion - guitar treatments/keyboard perc.
5. Elegy for Amelia E.
7. Did You Never Know?
Joshua Redman - Captured Live!
1. JJ Returns to L.A.
Brad Mehldau participates in Filter Acarina (CD Purple Vista) and Flametop Piano (CD Santiago).
2. Every Day A Little Death - Grover Washington Jr.
The Best of "Summer Nights at MOCA"
2. Billy Higgins-"The Night Has a Thousand Eyes"
5. Joe Bonner & Michael White-"Moontrain"
6. Ernie Andrews-"I've Seen Fire & I've Seen Rain"
8. Barry Harris-"Un Poco Loco"
3. Zuco 103 "Outro Lado"
4. Lenine "Jack Soul Brasileiro"
5. Caetano Veloso "Damas das Camelias"
6. Yo-Yo Ma "Appalachia Waltz"
7. Bryan Ferry "Where or When"
8. Brad Mehldau "Fire and Rain"
9. Terry Callier "When my lady danced"
12. Thomas Fersen "La Chandelle"
13. Samia Farah "Le Temps S'immobilise"
14. Femi Kuti remixed "Sorry sorry Manta 1000 remix. "
15. Danyel Waro "Banm Kalou Banm"
16. Amadou et Mariam "Bali Maou"
1. Kenny Drew Jr. Trio "Cancion y Danza VI"
2. Lee Konitz, Steve Swallow & Paul Motian "Luiza"
3. Chucho Valdes "Embraceable you"
5. Charlie Haden and Pat Metheny "Cinema Paradiso"
6. Paquito D'Rivera & Arturo Sandval "Claudia"
7. MIchel Camilo & Tomatito"Two much's love theme"
8. Ed Simon & Mark Turner"Caballo Viejo"
10. George Mraz "Cinema Paradiso"
1. Brad Mehldau "Knives Out"
2. Kronos Quartet and Asha Bhosle "Dum Maro Dum"
3. Joshua Redman "Sweet Nasty"
4. SFJAZZ Collective "When will the blues leave"
5. Bill Frisel "My Man's Gone Now"
6. Pat Metheny "Word from BIrd"
7. John Adams "Road Movies Part1"
8. Steve Reich "New York Counterpoint/Part 1 Fast (edit)"
10. Ry Cooder "Chinito Chinito"
11 David Byrne "Glass, Concrete & Stone"
13. Magnetic Fields "I wish I had an evil twin"
14. Wilco "Muzzle of Bees"
1. Rick Braun "Use Me"
4. Brad Mehldau "In The Wee Small Hours of The Morning"
6. Joshua Redman Quartet "Enemies Within"
7. Bob James "Dancing on the Water"
1. Ben Folds "Fred Jones part 2"
2. Michel Petrucciani "September second"
3. Ryan Adams "Sylvia Plath"
4. Danilo Rea "Sospensione 1/oh che sara"
6. Brad Mehldau "Moon River"
8. The Monkees "Goin' Down"
9. Luca Flores "How far can you fly?(ladder)"
10. Natalie Merchant "Saint Judas"
11. John Pizzarelli "Long and winding road"
12. Caetano Veloso "Trem das cores"
13. Loe Reed and John Cale "Hello it's me"
14. Roberto Gatto and Peppe Servillo "Roma nun fa'la stupida stasera"
4. Ding-Dong!... - Harry Connick, Jr.
All Blues presents: Jazz Classics Jazz Recitals 1994-2004"
1. Michel Petrucciani "One night in the hotel"
3. Dianne Reeves "Lullaby of Birdland"
4. Didier Squiban "Image 6-a Jose Nedelec"
5. Kenny Barron "Thoughts and Dreams"
6. Sonny Rollins "Change Partners"
7. Abdullah Ibrahim "Joan-Cape Town Flower"
9. Cassandra Wilson "Waters of March"
10. Dee Dee Bridgewater "Fascinating Rhythm"
11. Charlie Haden Quartet West "Always Say Goodbye"
13. Herbie Hancock "Embraceable You"
14. Chick Corea and Bobby McFerrin Quartet "Armando's Rhumba"
1. The Pale Fountains "Bicycle Thieves"
2. The Velvet Underground and Nico "Sunday Morning"
3. Jonathan Fire Eater "Station Coffee"
5. The Cinematic Orchestra "Breakfast"
6. Brad Mehldau "Paranoid Android"
7. Burt Bucharach "South American Getaway"
8. Cousteau "Last good day of the yaer"
9. The Cinematic Orchestra "Swimming pool"
10. The Cinematic Orchestra "Balcony"
11. Louis Bertignac "Elle, Iui et Louis"
12. The Cinematic Orchestra "Restaurant"
13. Sparklehorse "It's a wonderful life"
14. The Velvet Underground and Nico "I'm waiting for the man"
15. Henri Mancini "Follow me: Love song from 'The Mutiny on the Bounty'"
Tracks 1 and 2 were recorded live on January 7, 1994 in Paris (quartet).
Tracks 3 and 4 were recorded live on January 4, 1994 in Paris (duo).
Recorded live at Jordan Hall at New England Conservatory Boston, MA, USA on December 3 1994 in concert for the Thelonious Monk Institute of Jazz Performance at New England Conservatory.
2. Boney James & Rick Braun/R.S.V.P.
The CD includes an edited shorter version (7:00) of "London Blues" from the Art of the Trio Vol.4.
This compilation CD was available from Starbucks Coffee in 2001.
Special thanks to Fleurine & Brad Mehldau for their continuous support!


Although retired from active teaching in History (and JSIS and Slavic, my other two departments) since 2006, I am still actively involved in research, writing and lecturing on both pre-modern Russia (my original research field) and on Central Asia, especially the historic Silk Roads.
Of my publications on pre-modern Russia, I would single out a monograph in Russian: The History of a Book: Viatka and 'Non-Modernity' in Russian Culture in the Era of Peter the Great (St. Petersburg, 2003), which uses a micro-historical approach to raise larger questions about the supposed "modernization" of Russia in the late 17th and early 18th centuries and the place of provincial culture and history writing in the generally better known histories of cultural change in that period. The book benefits from my particular interests in textual criticism and codicological study of early Russian manuscripts. Nearing completion is a book (co-authored with a Slavic linguist at Uppsala University in Sweden, Ingrid Maier) on Russian acquisition of foreign news in the 17th century, a project that to date has produced several articles.
My Central Asia interests are broad, ranging from the historic Silk Roads (about which I taught at UW for many years) and archaeology in Mongolia to the history of the "Great Game" rivalries of the 19th and early 20th centuries and civil society issues today. I continue to edit and write extensively for The Silk Road (the annual of the Silkroad Foundation), give frequent public presentations on the subject (a number of them for the Seattle Asian Art Museum), and plan eventually to finish a book of essays on Eurasian exchange. Several of my articles from the journal have appeared in Chinese translation; I am translating Russian archaeological reports into English for publication in a series on Asian archaeology at the University of Bonn in Germany. A Mellon Emeritus Fellowship in 2010 supported study/travel at Silk Road sites in the Middle East (Iran, Syria, Jordan, Turkey), supplementing my extensive travel, study and excavation in China, Central Asia and Mongolia. On recent trips to the United Kingdom, I lectured at the universities of Oxford, Cambridge, Aberdeen and Durham, and at the Royal Geographical Society in London.; in 2016 and 2017, I presented at conferences in Seoul and in Kazan (Tatarstan, Russia) Part of my Silk Road-related activity involves contributing to the teaching of world history and to educational websites, especially "Silk Road Seattle" <http://depts.washington.edu/silkroad/>, whose resources are widely used in classrooms around the world. My photographs have illustrated a wide range of publications; a major collection of them is currently being added to the archive of ArchNet, the Aga Khan Program in Islamic Architecture at MIT..
My third ongoing book project is to edit a collection of the writings of C. P. Skrine, who was British Consul in Kashgar (Xinjiang, China) in 1922-1924 and left behind an extensive collection of letters, descriptive material and photographs.
Waugh, Daniel. The History of a Single Book (Istoriia odnoi knigi). S. Peterburg: Dmitrii Bulanin, 2003. Print.
Waugh, Daniel. Civil Society in Central Asia. Seattle: University of Washington Press, 1999. Print.
Waugh, Daniel. Essays in Honor of A.A. Zimin. Columbus, OH: Slavica, 1985. Print.
Waugh, Daniel. The Great Turk Defiance: On the History of the Apocryphal Correspondence of the Ottoman Sultan in its Muscovite and Russian Variants. Columbus, Ohio: Slavica Publishers, 1978. Print.
Waugh, Daniel. The Slavic Manuscript Collection of F. A. Tolstoy (Slavianskie rukopisi sobraniia F. A. Tolstogo). Zug: Universitet sht. Vashington, In-t sravnitel??nogo i zarubezhnogo stranovedenii‹?ÿa‹?, 1977. Print.


Your HAAN® Steamer is warranted to be free from defects in material and workmanship for a period of one (1) year from the date of purchase when utilized for normal household use by the original purchaser only.
Should any defect covered by the terms of the limited warranty be discovered within one year, HAAN® Corporation will repair or replace the defective part. To process a warranty claim, contact customer care at 1-877-422-6347 for further assistance and instructions. A customer care agent will conduct trouble shooting in an attempt to fix any minor problems. Should trouble shooting not provide any result, a return authorization will be issued. Proof of purchase is required and should accompany the return. Freight costs must be prepaid by the purchaser.
The liability under this warranty is limited solely to the cost of the replacement parts or the complete unit at our option. Labor charges are not included.
This warranty is extended to the original purchaser of the unit and excludes all other legal and/or conventional warranties. The responsibility of HAAN® Corporation, if any, is limited to the specific obligations expressly assumed by it under the terms of the limited warranty. In no event is HAAN® Corporation liable for incidental or consequential damages of any nature whatsoever. Some states/provinces do not permit the exclusion or limitation of incidental or consequential damages, so the above may not apply to you. This warranty gives you specific legal rights which vary from state to state or province to province.
Warranty Notice: failure to complete and return the product registration card will not diminish your warranty rights.


Silica Quartz, Delmas Mpumalanga - Golf | Hotfrog SouthAfricaSilica Quartz in Delmas Mpumalanga. . Silica Quartz a supplier of high grade silica sand, grit and pebbles for the glass, industrial, mining, filtration and leisure.silica mine delmas,Properties of South African silica sand used for rapid filtrationThe paper reports the findings of an investigation into the properties of silica sand for use in rapid . mines are found from Delmas in the east to Brits in the west.SILICA QUARTZ (PTY) LTD - Bizcommunity. .silq.za. Physical address: Farm Groenfontein, Delmas, DELMAS DISTRICT, 2210. Postal address: P.O. Box 157, Delmas, DELMAS DISTRICT, 2210.
Silica Quartz (PTY) Ltd Phone and Map of Address: Farm Groenfontein, Delmas, . Consumer Complaints and Ratings for Mining Contractors in Mpumalanga.
13266 - BELFAST SILICA MINE (PTY) LTD. Mine Code: 13266. Mine Name: ... 15252 - ERA BRICKS - DELMAS CLAY MINE. Mine Code: 15252. Mine Name:.
SamQuarz - Silica and Chert mine Delmas. . Delmas to Mine: Approximately 8km on the R50 towards Leandra. Turn off to . 2km on dirt road to the mine gate.
Nov 15, 2012 . SQ owns and operates a mine in the Delmas area of Mpumalanga, producing silica of high quality. SQ provides silica to a number of customers.
. .silq.za. Physical address: Farm Groenfontein, Delmas, DELMAS DISTRICT, 2210. Postal address: P.O. Box 157, Delmas, DELMAS DISTRICT, 2210.
Thaba Chueu Mining (Pty) Ltd and Samquarz (Pty) Lt (10/AM/Jan12 .
Nov 26, 2012 . Keywords, intermediate merger, mining, production and sale of silica, silicon metal ferosilicon, silicon carbide, regional, conditional approval,.
Argent, Delmas, Nkangala District, Mpumalanga Province, South .
Argent, Delmas, Nkangala District, Mpumalanga Province, South Africa : 100 km . sometimes referred to as 'Argent Mines' are Transvaal mine, Shimwell vein,.
Jobs 1 - 10 of 119 . Jobs now available in Delmas, Mpumalanga. Receptionist, Ingénieur Commercial (H/F), Administrative Assistant and more on Indeed.za.
Silica Quartz (pty) Ltd, Farm Groenfontein , CO.REGISTRATION NO .
Producers of Silica Sand. . Silica Quartz (Pty) Ltd. Farm Groenfontein Delmas South Africa 2210. South Africa. Call Click to see their phone number. Call Click.
Silica Quartz Mine Environmental Authorisation for activities listed under the 2014 EIA regulations for the National . pdf P1379 Delmas Silica EMPr2.32 MB pdf.
Search and apply for the leading General Worker Mines job offers in Delmas. All Health jobs in one easy search. jobisjob.za.
Oct 20, 2010 . SamQuarz, a silica mine located in the Delmas area, has committed to supporting Mafuleka by purchasing farming equipment and machinery to.
91-36-0001 Lavic Quarry 2007M-05 Volcanic Cinder Cemex (7028 .
Apple Valley Clay Mine. 93M-08 . Silica. Victorville Industrial Minerals. 91-36-0026. Colosseum Mine. 85M-02. Gold & . Delmas / Donna G. Peterson. 91-36-.
Marampa Mine, Sierra Leone,; PALADIN ENERGY,; Paladin Energy Ltd, Kayelekera mine . SAMQUARZ SILICA MINE DELMAS, QUALITY CONTROLER FINAL.
Nonkululeko Mahlangu · Nonkululeko Mahlangu · See Photos · Nonkululeko Mahlangu. SILICA QUARTZ MINE. Delmas, Mpumalanga. Nonkululeko Mahlangu.
The DMR requires a 'clean closure' assessment, meaning that the mine . Beeshoek Iron Ore Mine. 2013. SamQuarz Silica Mine. Closure Cost Update. Delmas.
Location: Delmas. The incumbent must be willing to study and focus on studies, achieve set targets, focus on continuous achievements for a period of two years.
May 15, 2017 . Title: Inside Mining May 2017, Author: 3S Media, Name: Inside Mining . Talking about social licence to mine, Exxaro's Leeuwpan coal mine in Delmas also went out of its way to .. bearing quartz conglomerate reef could.
A comparison of specific growth rates of periphytic diatoms of .
. diatoms of varying cell size under laboratory and field conditions. Authors; Authors and affiliations. Soizic MorinEmail author; Michel Coste; François Delmas.
Feb 12, 2012 . Dwarsfontein near Delmas on which the 'Transvaal mine' is situated has .. the real cause being death from silicosis or the inhalation of quartz.


Armando Alvarez spent 27 years with Best Buy as VP of Stores for 20 years. Then another 7 years in the Home Services Division helping grow over 20,000 technicians responsible for both the in-home services and stores services. Helped build Geek Squad City with over 1,100 technicians and 275,000 sq ft of space who performed over one million repairs on an annual basis. Responsible for refurbishment, parts reclamation and parts harvesting. He retired 3 years ago from BestBuy and since had his arm twisted (not really) by Mr Hutto, the CEO of Staymobile to come out of retirement to join him in the pursuit the exciting wireless repair channel where for the last 7 months he has added tremendous value as Executive VP of Stores and Operations at Staymobile.


Are you ready for the Beach? Well we are now! Little Lizard King has a new pattern and it's a swim suit !!! woo hoo! Laguna is part of the Cali collection, and it is an amazing pattern! The style options are just too cute, and the instructions are so easy to follow it makes sewing a swim suit,,, well easy!
So the style options.. Omg so may ways to make this suit, the top comes in bikini length, or tankini lentgh, with optional ruffle or skirt, then there are 2 neckline, scoop or high neck. There are 2 styles to the bottoms, bikini or vintage with an optional ruffles, so many combos!
For Miss Ashlynn's Laguna suit we took inspiration from her resent pink donut infatuation, that started with this float form the Dollar store, I chose the bikini top with the exposed skirt, Ashlynn pick the shiny pink swim fabric and I added aaaaaallllllll the sprinkles…. so thankful for my free motion foot.
For the bottoms, I loved the look and coverage of the vintage bottoms, plus that little ruffle! We went with a brown (which was hard to find) to represent the cake part of the donut, these are fully lined, which I love, there is also an option for just a crotch lining, that is quick and easy!
My kids love the beach and the beach is more fun with friends and since I can't stop making Laguna, I sewed up one for Miss Ashlynn's friend. She loves purple so this one has a mermaid feel, with it's purple high neck thankini, with exposed ruffle skirt top and the metallic green, vintage bottoms with green mesh ruffles, she was ready for the water!
You gotta have a Beach bag and swim coverup! Little Lizard Kings has the patterns for those too! Their tote bag comes in 5 sizes! I used the XL for our donut beach bag! The swim coverup is their Sedona pattern in a stretch lace, I omitted the lining on the bodice and just hemmed the neck and sleeves, since it was stretch fabric it was pretty easy!
I loved sewing all these little patterns up! and we had a blast at our little lake beach!
Get the Laguna pattern on sale through Sunday!


Today is another big AWS launch day with two important new features available for EC2: a Relational Database Service (RDS) and larger servers and a 15% price reduction on compute cycles.
With the Relational Database Service AWS fulfills a longstanding request from a large number of its users, namely to provide a full relational database as a service. What Amazon is introducing today is slightly different from what most people might have expected - it's really MySQL 5.1 as a service. The RDS product page explains how it works, but the short explanation is that with an API call you can launch a MySQL 5.1 server that is fully managed by AWS. You can't SSH into the server; instead you point your MySQL client library (or command-line tool) at the database across the network. Almost anything you can do via the MySQL network protocol you can do against your RDS instance. It's pretty simple, and the bottom line is that businesses that don't want to manage MySQL themselves can outsource much of that to AWS. For background on RDS I recommend reading Jeff Barr's writeup and Werner's blog, which recaps the data storage options on AWS.
AWS keeps your RDS instance backed up and running, plus gives you automation to upsize and downsize. You can create snapshot backups on-demand from which you can launch other RDS instances, and AWS automatically performs a nightly backup and keeps transaction logs that allow you to do a point-in-time restore.
The way I think of an RDS instance is as a virtual appliance or a special-purpose server. You get an EC2 instance with an EBS volume running a specific version of MySQL plus automation for backups and resizing the storage volume. The API is designed such that additional versions of MySQL and other databases can easily be added in the future. Just like a regular server, each RDS instance lives within an availability zone and access is controlled through a security group (plus MySQL authentication). I haven't had the opportunity to run performance tests, but I surmise that it's not too different from DIY running MySQL on a regular instance.
One of the current shortcomings of RDS is the lack of replication. You're dependent on one server, and it's impossible to add slave MySQL servers to an RDS instance to increase read performance. It's also impossible to use MySQL replication to replicate from a MySQL server located in your datacenter to an RDS instance. But replication is in the works, according to the RDS product page.
In terms of cost, RDS is priced at 30% above the same raw EC2 instance (after the November 1 price reduction), but the comparison is a little tricky because some backup storage is included as well. Of course I quickly compared to the cost of RightScale: If you run three XL RDS instances, the extra cost is already more than a RightScale subscription which (just on the DB end) gives you replication, read-scaling, full control, plus real live support. It's interesting to see how the per-hour price surcharge compares with a more flat-fee subscription to a broad management service.
We want to offer our customers the broadest choice possible, so we'll support RDS instances in the RightScale dashboard within a day or two when we complete our next release.
EC2 now sports larger and faster servers: XXL and XXXXL sizes, properly called m2.2XL and m2.4XL. These new server sizes are particularly important for large database users; we've been awaiting them ourselves. We haven't had an opportunity to play with them yet but we'll update our MySQL ServerTemplates as soon as we have a chance. The fact that the new instance size names start with m2 reflects that the speed of each core is significantly higher than that of the m1 series. With the prices being less than 2x and 4x that of a current m1.xlarge instance there's no reason not to keep scaling up in machine size.
Amazon shows it again and again: Listen to your customers, implement new features accordingly, and iterate. Tonight's release adds important new capabilities to the AWS cloud offering, and we're sure many of our customers will rapidly adopt them. I remain a little reserved about the database service because it does not currently support replication, which I wouldn't want to live without, but Amazon is definitely on the right track.


text:
Urgent Call
Forum: Peace and Beyond
IPT2018
ICHRPInternational Coalition for Human Rights for the Philippines
HUMAN RIGHTS 2021: Red-tagging, systematic state murder are the order of the day in the Philippines -ICHRP
On the night of January 2, in Sta. Rita town, Pampanga, Federico Pineda, a construction worker who was celebrating his daughter's seventh birthday was shot...
PH gov't human rights summit, a deodorizer
An international rights group called out the government's "human rights" summit as another platform to save face after gaining global notoriety for human rights...
Junk MO 32, End Lawless State Violence on Negros Island, Philippines!
This November 22, the International Coalition for Human Rights in the Philippines - Canada calls for the junking of Memorandum Order No. 32 (MO...
#DefendCordilleraPh: Release Igorot leader Beatrice Belen!
Global organisations and rights advocates condemn the recent arrest of indigenous peoples leader Beatrice Belen of Innabuyog Kalinga, in the Northern Philippines. Groups under...
ICHRP on the adoption of UNHRC Resolution: PH gov't peddled lies to the UN body
The International Coalition for Human Rights in the Philippines (ICHRP) once again expressed their demand for an independent international investigation on the non-stop rights...
AllLetterUrgent Call
Appeal to accept report and recommendations of the UN High Commissioner for Human Rights
LETTER June 13, 2020 H. E. Mr Rodrigo Duterte President of the Republic of the Philippines Malacañang Palace,JP Laurel St., San Miguel Manila, Philippines Appeal to accept report and...
Strongest protest at red-tagging of foreign human rights defenders
May 22, 2020, H. E. Mr Rodrigo Duterte, President of the Republic of the Philippines Malcanang Palace E-mail: pcc@malacanang.gov.ph or http://op-proper.gov.ph/ Strongest protest at red-tagging of foreign human rights defenders Dear Excellency, On May...
OPEN LETTER: Urging again the Supreme Court of the Philippines to send political prisoners home
May 5, 2020, H. E. Mr Rodrigo Duterte, President of the Republic of the Philippines Malcanang Palace E-mail: op@president.gov.ph or http://op-proper.gov.ph/ Urging again the Supreme Court of the Philippines to send political...
Duterte's all-out war against the people amid the COVID 19 pandemic
INTERNATIONAL COALITION FOR HUMAN RIGHTS IN THE PHILIPPINES - AUSTRALIA 29 April 2020 We have protested the growing militarization of the Philippines and the institution of...
AllForum: Peace and BeyondIPT2018
Tribunal Declares Trump and Duterte Guilty of Crimes Against Humanity
BY Marjorie Cohn Source: https://truthout.org/articles/tribunal-declares-trump-and-duterte-guilty-of-crimes-against-humanity/ Philippine President Rodrigo Duterte and his government committed war crimes and crimes against humanity, aided and abetted by U.S. President Donald...
Duterte, Trump guilty of war crimes, crimes against humanity
By Janess Ann J. Ellao bulatlat.com Guilty. This is the verdict of the recently-concluded International Peoples' Tribunal (IPT) against President Rodrigo Duterte, US President Donald Trump, and...
'Tribunal is genuine pursuit of truth and justice'
"The International Peoples' Tribunal is a genuine process of uncovering the culpability of the Duterte administration in the gross violation of the rights...
Leaving the ICC, dismissing the IPT are acts of cowards evading accountability
"It takes very little to irk the President as mere mention of the words justice and accountability puts his entire government in the...
Duterte now a known dictator with EU Parliament vote
President Rodrigo Duterte has become a globally infamous dictator with the European Union (EU) Parliament passing a resolution on the country's human rights crisis...
ICHRP mourns state murder of Filipina human rights worker
Slain paralegal Zara Alvarez helped bring cases of Negros killings to UNHRC "We mourn the killing of human rights worker Zara Alvarez, a brave and...
Global rights group condemns state murder of Filipino peace consultant
Assassination of land reform activist Randall Echanis designed to destroy peace dialogue The International Coalition for Human Rights in the Philippines protests in the very...
The Philippine Government Should Immediately Repeal Anti-Terrorism Act of 2020, which Harms Human rights and Democracy!
We Condemn the Duterte government for Continuous Suppression of Human Rights! Statement of ICHRP-Korea on the signing of the Anti-Terrorism Act July 7, 2020. On 3 July...
Home campaigns
ICHRP-Canada Open Letter to President Rodrigo Duterte
President Rodriqo R. Duterte
Malacañang Complex
1000 Jose P Laurel Sr, San Miguel,
Manila, Metro Manila
Dear President Duterte:
As human rights defenders in the Philippines become under increasing attack, we, the International Committee for Human Rights in the Philippines (ICHRP-Canada), are compelled to express our deep concern regarding your most recent orders to crackdown on legal and progressive organizations in the Philippines. We add our voices to the chorus of organizations and activists in the Philippines and from around the world who are calling for your government to resume the peace negotiations and put a stop to the harassment and killings of those who are vocal about ongoing human rights violations and the imposition of martial law in Mindanao.
Recent declarations that you will "kill human rights defenders" who criticize the conduct of your drug war which has resulted in thousands of extrajudicial killings in mostly urban poor communities, is beyond comprehension. According to numerous sources throughout the country, several human rights defenders (HRDs) have subsequently received direct threats, have been harassed, or murdered by or on behalf of the Philippine military. These are among the most recent examples that have been brought to our attention:
Legal and progressive organizations Karapatan, Piston and the Kilusang Mayo Uno (KMU) were targeted as "communist front organizations" and its leaders and members have been threatened with or have been arrested.
On October 25, 2017, paralegal Edwin Pura, 49, was gunned down by two armed men in Gubat, Sorsogon province. Pura was a paralegal staff of Atty. Ron Ely Espinosa of the National Union of Peoples' Lawyers (NUPL), a group of human rights lawyers.
On the evening of November 20, nine members of the Karapatan-led quick reaction mission, all of them peasants, in Nasugbu, Batangas province were illegally arrested by the police and the Philippine Air Force. The team of at least 30 members were about to go to communities affected by the recent military operations when when these arrests took place.
On November 28, 2017, Karapatan Negros Oriental coordinator Elisa Badayos and peasant leader Eleuterio Moises were shot and killed by unnamed men, while on a fact-finding mission in Bayawan, Negros Oriental.
On November 30, 2017, "Wanted" posters bearing the pictures and names of leaders of progressive organizations in Davao, including Karapatan's Hanimay Suazo and Bayan's Sheena Duazo, were once again being circulated. The leaders, collectively known as "Haran 15" were charged with trumped-up charges of kidnapping and serious illegal detention.
On December 4, at around 8pm,Fr. Marcelito "Tito" Paez, former parish priest in Guimba and currently coordinator of the Rural Missionaries of the Philippines in Central Luzon, was shot while driving his vehicle at San Leonardo, Nueva Ecija On December 3, 2017, Pastor Lovelito Quiñones, 57, a pastor of Kings Glory Ministry, a resident of Sitio Anapla, Brgy. Don Pedro, Mansalay, was shot by elements of the Regional Mobile Group (RMG) in Sitio Anapla, Brgy. Din Pedro, Mansalay, Oriental Mindoro.
These recent actions and declarations by your government, coupled with the many other incidents of killings and arrests of peasants, Moro indigenous peoples and development workers is reminiscent of the pattern of vicious attacks against human rights defenders during the martial law period of dictator Ferdinand Marcos and the administration of Gloria Macapagal Arroyo. We are appalled as these attacks are becoming more brazen, even targeting fact-finding, quick reaction and humanitarian missions, further constricting the remaining spaces for independent investigations by human rights groups on violations by state forces.
We are appealing to you to stop the attacks against human rights defenders in the Philippines, to rescind all policies and pronouncements that endanger the lives and security of these human rights defenders and vulnerable communities, and to ensure a safe and enabling environment for HRDs.
Bern Jagunos
For ICHRP-Canada
Minister of Foreign Affairs, Government of Canada;
NDP Critic, Foreign Affairs;
Conservative Critic, Foreign Affairs;
Philippine Embassy in Canada;
Embassy of Canada in the Philippines;
Hon. Jesus Dureza
Presidential Adviser on the Peace Process;
Ret. Maj. Gen. Delfin Lorenzana
Secretary, Department of National Defense;
Hon. Vitaliano Aguirre
Secretary, Department of Justice;
Hon. Jose Luis Martin Gascon
Chairperson, Commission on Human Rights,
*The International Coalition on Human Rights in the Philippines (ICHRP) is a global network of organizations outside the Philippines who are concerned about human rights and committed to work for a just and lasting peace in the Philippines.
Doris Wilson
International human rights group decry Philippine government closure of Lumad sanctuary
Portland Human Rights Commission Votes in Favor of Resolution to Suspend Military Aid to Duterte Regime
International human rights group laud conviction of Ampatuans
Support the Filipino People's Struggle, Not U.S. War
HUMAN RIGHTS VIOLATIONS PERPETUATED BY PHILIPPINE GOVERNMENT
ICHRPInternational Coalition for Human Rights in the Philippines


Incor Group is one of the leading real estate company in India. In 2007 INCOR Infrastructure started with the vision of bringing a professionally managed real estate company to India. In 2008 they have launched Pbel city which stands as a pillar for Incor group. Year by year they are so much good infrastructure and many more advantages to the customers and many more improvements in the company history. In 2017, they gained 2500 happy customers.
Incor One city is a new project launched by Incor group in Hi-tech city road Kukatpally, Hyderabad and it is also closely related to Lodha Belezza/Meredian. IJM Malaysian Township.
The main Highlighted point in Incor One city project is a good architecture and greenery environment.
It is connected to all major cities of Hyderabad. NH9 and Highway are major connectivity boosters in the Kukatpally region providing easy accessibility to major locations in and around Hyderabad.


Amphora - This restaurant specializes in Greek cuisine and serves lunch and dinner.
Guests booked in a Suite, Sea View room type over the hotel restaurant should expect a high level of noise on weekends. For more details, please contact the property using the information on the reservation confirmation received after booking.
A beautiful place in a comfortable and friendly hotel. The staff were helpful and friendly. Our room was very comfortable, light and airy, and full of character. We enjoyed the roof garden,.Housekeeping was excellent. My husband had difficulty climbing the stairs - but that was because of the nature of the building.We would love to return- again!
Staff was incredible. Got great tips. Room was beautiful. Would love to return.
Exceptional service, value for the money and amazing location. We will stay there again and strongly recommend to all.
Well located hotel with oodles of charm. Friendly staff - we had a pleasant stay.


text:
1970 Bultaco Sherpa S Model 67
This 200 cc Model 67 belonged to Rob Hambright. Tim Stancill and Rusty Foard met him back in the late 60s, racing dirt track. All three bought the same Bultacos from Jim Kearney at his Glen Burnie dealership back in the day. Tim approached Rob several times over the last couple of years to purchase the bike, but he wasn't ready to sell. Unfortunately, Rob passed away in 2017 at age 66, and Rob's wife offered the bike to Tim. Nobody had seen the bike in 40 years — turns out it was behind the shed, out in the weather! The picture of it in the back of the pickup truck says it all — pretty rusty and missing a lot of parts. But I'm a glutton for punishment and we wanted to honor Rob by resurrecting his race machine. Tim wrote the checks, Rusty rebuilt the engine and I restored the rest of the bike. We are proud to have it in our collection with Rob's name and race numbers applied.


In Sept. 2018, David Bianchi, a Miami attorney who helped write Florida's current hazing law in 2005, announced he wants to toughen the legislation and close loopholes.
Bianchi also represented the parents of Andrew Coffey, a Florida State student who died in 2017 after pledging the school's Pi Kappa Phi fraternity.
Coffey died of acute alcohol poisoning and had a blood alcohol content of .447 at the time of his death.
Bianchi wants to add language granting amnesty to leaders of organizations in reporting serious injuries to police. He also wants to add language that would make it illegal to haze any members of an organization, not just those who are pledging.
Read more about Bianchi's proposal from the Tallahassee Democrat.


text:
San Francisco | Boise | Roanoke | Canada
IR Websites
Typesetting & Print
Document Hosting
Corporate Issuers filing proxy materials with the SEC must now post these materials to a public website at the time of their mailing to shareholders 40 days prior to the security holder meeting date or the date that votes of shareholders regarding corporate action are due. The adoption of these rules by the SEC requires that all materials identified in the Notice of Internet Availability of Proxy Materials must be publicly accessible and free of charge at the website address specified in the notice sent to shareholders. The materials must remain available on that website through the conclusion of the meeting of security holders. The following rules apply:
(2) All additional soliciting materials sent to security holders or made public after the Notice of Internet Availability of Proxy Materials has been sent must be made publicly accessible at the specified Web site address no later than the day on which such materials are first sent to security holders or made public.
(3) The Web site address relied upon for compliance under this section may not be the address of the Commission's electronic filing system.
(4) The registrant must provide security holders with a means to execute a proxy as of the time the Notice of Internet Availability of Proxy Materials is first sent to security holders.
(c) The materials must be presented on the Web site in a format, or formats, convenient for both reading online and printing on paper.
RDG can help you comply with the Notice & Access regulations by making your Proxy and Annual Report available online. We can host your documents on our servers and provide you a simple URL that you can include in the Proxy and on the Notice card. You will also be able to link to our hosted site from your corporate website.
Our Hosting Services are available for any documents you wish to make accessible to your clients, employees, investors, or board members.
Please contact us or call 415.643.6017 for more information.
Careers | Privacy Policy
A division of Research Data Group Inc.
© 2023 Research Data Group Inc. All Rights Reserved.


The milk teas are flavored with the popular Thai fruits mango, cantaloupe, coconut, durian and mangosteen. They come in an instant powder form and can be consumed at both hot and cold temperatures. The boxes appear on black backdrops and feature illustrations of the fruit that flavors the drinks, with them being drawn as a cup holding the tea to reflect the intense infusion of flavor that instant powders offer. The labeling is featured in the colors that make up the fruits themselves.
These Thai fruit teas can be consumed in a variety of ways and are packaged in a way that ensures they capture the attention of consumers.


After a decade of research, UL's Firefighter Safety Research Institute (FSRI) found that a simple behavioral change, closing your bedroom door, could have a potentially life-saving impact. Tests showed that a closed door made a life-saving difference in case of a fire. A room with an open door showed temperatures over 1,000°F, while a room with a closed door had temperatures at only 100°F. Research also showed that a closed door kept room conditions survivable longer than an open door.
A closed bedroom door provides a layer of protection between you and a fire, which is especially important at night when family members may be vulnerable, disoriented with little time to react.
A closed door helps limit oxygen flow, which may help prevent a fire from growing. Consequently, when escaping a burning structure, it's important to remember to close the door behind you to help limit property damage.
Publicizing new fire safety techniques for preventing fire spread is more essential today than ever, due the evolving fire environment. Forty years ago, victims had an average of 17 minutes to escape a burning home after the activation of a smoke alarm. Today, that time has dropped to 3 minutes or less due to evolutions in furnishings, homes incorporating more open layouts and lightweight construction materials, allowing fires to spread much quicker. With less time to escape a fire, it becomes of increasing importance to sleep with your bedroom door closed.
Visit CloseYourDoor.org for additional information about this important public safety message and the UL FSRI "Close Your Door" campaign.
UL solves the safety, security and sustainability challenges of the 21st century. We empower trust and enable the safe adoption of innovation. To do this, UL tests, inspects, audits, certifies, verifies claims, advises and trains as well as provides software solutions. Around the world, our employees share a common passion for our public mission to promote safe working and living environments for all people. Our public charity, Underwriters Laboratories Inc., conducts independent research, community outreach, standards development and safety education. To learn more about us, visit UL.com.
Check out the website – there's even a song, and you can become part of the Closed Door Crew! There's more information here.
I'm a believer. I read this somewhere else on the site a few times also and made mental note of it. For the past few nights the door has been closed. It will continue this way here on out. What a huge difference a small change can make.
Great! I hope you never have to experience a fire, but I'm glad you're prepared.
Thank you. I will circulate to our Disability Alliance Group and Independently Living agency.


I cleared out feeling propelled and stimulated by my energetic and skilled gathering of specialists. I completed four demo depictions amid the workshop and I took them out today and included some completing touches. This wildflower painting is a decent case of the advantage of time far from a work of art before including the completing imprints.
I started this artistic creation at the workshop with a watercolor underpainting. I wish I had taken a photograph of the underpainting stage on the grounds that the hues I utilized as a part of the underpainting certainly affected the way I reacted to the work of art. The sky should be blue yet the peachy yellow underpainting would not like to be blue! So I let it be peachy yellow.
The photograph beneath indicates where I ceased the demo. I had made my essential focuses and it was the ideal opportunity for the class to begin painting. I am so happy I halted when I did. I had gotten to the reasoning piece of the work of art process....the time when you are relatively completed however aren't exactly certain what else to do.


text:
Applications invited for 2019 Round 2 funding
The James Macready-Bryan (JMB) Foundation will receive applications until 31 October 2020 for the next round of funding for eligible young people with an acquired brain injury, to support their specific needs.
Why have an applications process?
The JMB Foundation was formed in 2007 by parents known to the family of James Macready-Bryan – JMB.
The JMB Foundation's vision is simple: all young sufferers of acquired brain injury should be fully and appropriately supported in their financial, rehabilitation and accommodation needs.
James was the victim of an assault which occurred on his 20th birthday in October 2006. A knock-out punch sent his head slamming into the pavement, causing total, permanent and catastrophic brain injury. The sporty, life-loving student is now housed in a young people's residential facility where he requires 24-hour care. He cannot move or speak, and is fed through a tube.
What happens to a young acquired brain injury sufferer like James Macready-Bryan? James' parents and friends discovered that, for those not injured in a motor vehicle accident or at work, support is hard to find, complicated, underfunded, fragmented and inefficient. This is where JMB Foundation can help, and this is why we have an applications process.
The JMB Foundation Applications for Funding process has been launched to provide a framework for allocation of funds, raised by the Foundation to support the needs of young people with an acquired brain injury.
It is a bi-annual process. Applications for funding for the period 1 Jan to 30 June 2021 will be accepted until 5pm on 31 Oct 2020. Applications received after this date will be considered for 2021 Rd 1 (funding period 1 July to 31 Dec 2021).
You may download an application form and Application for Funding Guidelines here.
To be eligible applicants must:
– have an acquired brain injury
– be under 50 years of age at the time of first application, further applications can be made up until under 55 years of age only
– be registered with the Department of Human Services (DHS), an NDIS participant or on the Disability Support Register (DSR) in Victoria, or an equivalent register in the applicant's Australian State of residence.
Anyone wishing to make an application on behalf of a client or family member should review the application guidelines and complete an application form, which should be forwarded to the JMB Foundation – together with any relevant supporting documents – via email to info@jmbfoundation.org.au or by post to P.O. Box 2281, Hawthorn, Vic 3122.
All queries can be directed to Paulina Mahoney by email – paula@jmbfoundation.org.au
JMB funding has enabled Ben Thompson to access additional physiotherapy.
Sam Ford's progress has been helped by funding from JMB.


On Dec. 21, Nina Koller, Oakdale resident and Hill-Murray junior, was awarded the Sean Patrick Lyons Memorial Scholarship. The scholarship commemorates Sean Lyons, who died from injuries he received in an auto accident on his way to school at Hill-Murray in 1985. Parents Tom and Meech Lyons and other family members were on hand at the school's Christmas Mass to present the award to Koller.
Koller is the 20th recipient of the award. The scholarship provides one-half of the Hill-Murray tuition for this year and is renewable for the recipient in the senior year.
Koller is a third generation member of St. Peter's Catholic Church in North St. Paul. She maintains an "A" average, is a member of the Hill-Murray swimming and diving team, active in theater and choral music, and is a member of the school's speech team. She devotes her free time to volunteering at St. Peter's, serving as a cantor in a contemporary singing group and working with the parish school's swim team and children's choir. She also works at a local dental office.
Nina Koller is the daughter of Denise and James Koller of Oakdale.


I am looking for an experienced graphic des...in/logo/[đăng nhập để xem URL]" our website URL is. [đăng nhập để xem URL] we need a completly different design. color selection is up to you. the logo will be used in printing, web, and mobile apps, also need a favicon. the logo should be HI-RES and provided format will be in .ai, .cdr, .psd, eps.
I have a bakery and I wanna have package designs from my existing logo. Basically I need a unique elegant design for the bread package, croissant box and cake b...Basically I need a unique elegant design for the bread package, croissant box and cake box. The designer needs to apply a mockup on the packages and give final dimensions for printing work..