I ordered 40 grams of morning glory seeds from an online vendor that claimed to be organicly grown. My only previous drug experiences include: pot, small amounts of salvia (no breakthrough), and low doses of kratom. I mention this because the fact that this is my first experience of this nature might change how you interpret my accounts. I can not say how similar or disimilar the trip was to SD or shrooms for example.
Set: 2 of my friends, were with me. 1 is a very familiar friend who I enjoy being with very much and feel that we have very similar views of reality and the world around us. I will call him N. The other guy is a guy I know and a good friend of N's. He will be called R. Another friend of N's arrive later in the evening and did not partake in the morning glory experience. He will be called J. We were out camping at this place I found in a national forest where we were miles from any other human being. We were next to a pond and at the top of a hill. It is a very relaxing and healing spot that I visit.
Preperation: We had 40g of seeds total. I mixed them up with my coffe grinder until it seemed they wouldn't grind any furthur. They were pretty much powder. We put the powder into a cup and mixed it with 2x as much water by volume as powder. We stired for 30 mins. At this point we decided to try to filter the mess with a coffe filter. This proved to fail fairly miserably. Only a couple drops of water would pour through the filter each second and the process was going to take quite a while. We ended up dividing the sludge up into 3 cups (eyeballed this). We tried drinking the substance but found the texture and taste to be fairly revolting. We then decided to pour more water into our cups and let the seed matter settle. We could then drink the water without getting any sludge/seed.
T+ 0:10 - We were all laying down and feeling sickness comming on. At this point it wasn't bad, but we layed down to help. It progressively got worse for about 30 mins until which we were all fairly sick.
T+ 1:30 - We managed to keep everything down for this long until we all had to puke. After this we all felt significantly better. There was a very large body load and we were all really lazy. We had a hard time getting the energy to collect wood and keep our fire going.
T+ 2:30 - J arrived to the area and we hadn't began really feeling any effects yet. Our campsite is about a 15-20 min walk from the parking area and no trail exists. I am the only one of the 4 of us who knows how to navigate the area. By this time it is very dark out and we need flashlights to navigate the woods. I have navigated back to the car and back with only a full moon before but I was sober then. This time I walked about half way back to the car with R to help J find his way up to the site. At this time I was noticing very vivid colors. The leaves were extremely green and the ground very brown in contrast.  Then N, back at camp made a bunch of noise so we could be sure we could get back to the camp site safely. We were fairly intoxicated by this time. When we got back to camp everyone of us noticed that we were very disoriented.
T+ 3:30 - The peak was getting very intense by this time. Although I don't really remember many visuals throughout the entire trip, I do remember lots of hallucination especially when I closed my eyes.
T+ 4:30 - At about this time I really have no idea when events occured relative to other ones. Time is pretty meaningless and doesn't seem to matter. I had an experience where I was given an opportunity to become enlightned. White light began to surround me and I felt my soul being lifted from my body. I am by no means religious in the traditional sence, although I do beleive in some types of buddhist teachings and enjoy contemplating deep topics. I decided not to go at the time because I was afraid that if I did, I would become mentally insane or go into a comma. I figured that if I ever reached that state, there was no way I would 'recover' in the traditional sence. I could not imagine the pain and suffering my 'overdose' would cause to those who loved me and felt like it wasn't fair for me to become enlightened. In retrospect, I am not sure what would have happened if I would have embrassed this feeling and let it absorb my soul.
T+?: At some point in here I threw up again but I didn't really care. The nausea came back for about 5 mins very slowly then I abruptly had to puke and felt infinately better 10 mins later.
The rest of the night was exteremely intense 'spiritually' for me as I contemplated and came to many realizations about myself, reality and many other things I had and still am thinking about often. I often either had my eyes closed or was completely unaware of my surroundings, body, environment. Because I was so absorbed in my thoughts I am not really very aware of many visual or auditory changes. I do know however that I could summon visual hallucinations on demand. No bending walls or anything of the like. Although I do remember thinking that our bon fire was extremely large. J who was sober at the time assured us that it wasn't that big at all.
T+ 6:00 - The tripping was still fairly intense. Still hallucinating and having very different though patterns. At some point around this time, I had a cyclic thought cycle which I here is farily common.
[Erowid Note: Driving while intoxicated or tripping is dangerous and irresponsible because it endangers other people. Don't do it!]
T+ 15:00 - By this time I was still noticing very vivid colors and an interest in everything around me. It took us a very long time to pack everything up and finally get back to the car. It was a 20min drive back to my house. I had to be very careful that I stay focused on the road. In retrospect, it probably would have been safer for me not to be driving. We all took showers and met back up in our town's downtown area.
T+ 18:00 - We had a bite to eat and a local resteraunt which tasted great. Colors were still vivid but I could notice things getting less intense. We saw a movie which I think I was much more interested in than I normally would have been. I am not normally a big fan of romanticish comedy types.
T+ 30:00 - I reached baseline sometime around here while I was sleeping.
T+ 36:00 - Visuals are not quite so vivid as they were the previous day but I am still in a very good mood overall. Not sure if this is due to the drug or not. It feels like its pretty much gone by now.
Overall I found this to be an extremely intense experience and very constructive and helpful. It's definately not something I plan on doing often but something I gained immensely from. If I ever do it again though, I am going to have to try one of the extraction tecs because I doubt I will be able to control my gag reflex with that drink ever again. Maybe if I can mix it with some drink I will be able to.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


Bail application: Maina arrives in court with walking stick
by https://www.facebook.com/CheerfulpraiseAbdulrasheed Maina, former Chairman, defunct Pension Reform Task Team (PRTM), on Monday, arrived at the Federal High Court, Abuja, with the aid of a walking stick.
Maina, who came into Court 6, 2nd Floor of the building, at about 9:40am, supported himself with a walking stick.
The ex-pension reform boss, who is standing trial on alleged money laundering charge to the tune of over N2 billion preferred against him by the EFCC, was dressed in a brown caftan with a matching cap.
The News Agency of Nigeria (NAN), reports that Justice Abang had, on Nov. 21, fixed Monday for hearing on the bail application and for continuation of his trial.
The judge, who accused the Nigerian Correctional Services (NCS) of compounding the issue before the court for failure to produce a medical report on the health status of Maina days after the order to the effect was made by the court, ruled that Maina’s trial would be on a day-to-day basis in subsequent proceedings.
Read Also; Maina: Family berates judge, wants case reassigned
NAN reports that the trial of Maina was stalled in the last adjourned date due to his worsening health condition.
The EFCC had on Oct. 25, arraigned Maina alongside his firm, Common Input Property and Investment Ltd, before Justice Abang.
Though he pleaded not guilty to the 12-count charge, his trial has yet to make meaningful progress due to his failing health.
The court is yet to hear Maina’s bail application fixed for today.


Welcome
Portfolio
Client Showcase
About
Contact
Book Online
×
Welcome
Portfolio
Client Showcase
About
Contact
Book Online
Our Private Services
Modeling Shoot
1 hr | Introductory Meeting
Let's Meet
Outdoor Shoot
1 hr | Introductory Meeting
Let's Meet
Still Life Shoot
1 hr | Introductory Meeting
Let's Meet


I am a former teacher and current, intrepid Epicodus Student. When I am not learning how to code, I make it my life's work to guide my son in growing up and write as much poetry as I can. If you are a poetry reader, click on the link below my projects entitled: "I'd rather read a poem" to lift a glimpse of a few words, as William Stafford would say, and carry them around for a while. If not, enjoy looking at the projects below. Again, thanks for the visit.
Click here to see my github repositories.


30 August 2002
Disease Outbreak Reported
The Government of Bangladesh has informed WHO that the preliminary findings of the investigation of an outbreak of a severe encephalitic illness in Meherpur, Bangladesh in April-May 2001 are now available (see previous report). The results of serological tests on clinical samples performed by the WHO Collaborating Centres, Centers for Disease Control and Prevention, Atlanta, United States, suggest that the aetiological agent may be Nipah or a closely related virus.


|
VirtualSCADA
1.0
VirtualSCADA Senior Design Project
|
Diff implementation for PHP, factored out of PHPUnit into a stand-alone component.
To add this package as a local, per-project dependency to your project, simply add a dependency on sebastian/diff
to your project's composer.json
file. Here is a minimal example of a composer.json
file that just defines a dependency on Diff:
{ "require": { "sebastian/diff": "*" } }
The Differ
class can be used to generate a textual representation of the difference between two strings:
```php use SebastianBergmann;
$differ = new Differ; print $differ->diff('foo', 'bar'); ```
The code above yields the output below:
--- Original +++ New @@ @@ -foo +bar
The Parser
class can be used to parse a unified diff into an object graph:
```php use SebastianBergmann; use SebastianBergmann;
$git = new Git('/usr/local/src/money');
$diff = $git->getDiff( '948a1a07768d8edd10dcefa8315c1cbeffb31833', 'c07a373d2399f3e686234c4f7f088d635eb9641b' );
$parser = new Parser;
print_r($parser->parse($diff)); ```
The code above yields the output below:
Array ( [0] => SebastianBergmann\Diff\Diff Object ( [from:SebastianBergmann\Diff\Diff:private] => a/tests/MoneyTest.php [to:SebastianBergmann\Diff\Diff:private] => b/tests/MoneyTest.php [chunks:SebastianBergmann\Diff\Diff:private] => Array ( [0] => SebastianBergmann\Diff\Chunk Object ( [start:SebastianBergmann\Diff\Chunk:private] => 87 [startRange:SebastianBergmann\Diff\Chunk:private] => 7 [end:SebastianBergmann\Diff\Chunk:private] => 87 [endRange:SebastianBergmann\Diff\Chunk:private] => 7 [lines:SebastianBergmann\Diff\Chunk:private] => Array ( [0] => SebastianBergmann\Diff\Line Object ( [type:SebastianBergmann\Diff\Line:private] => 3 [content:SebastianBergmann\Diff\Line:private] => * @covers SebastianBergmann\Money\Money::add ) [1] => SebastianBergmann\Diff\Line Object ( [type:SebastianBergmann\Diff\Line:private] => 3 [content:SebastianBergmann\Diff\Line:private] => * @covers SebastianBergmann\Money\Money::newMoney ) [2] => SebastianBergmann\Diff\Line Object ( [type:SebastianBergmann\Diff\Line:private] => 3 [content:SebastianBergmann\Diff\Line:private] => */ ) [3] => SebastianBergmann\Diff\Line Object ( [type:SebastianBergmann\Diff\Line:private] => 2 [content:SebastianBergmann\Diff\Line:private] => public function testAnotherMoneyWithSameCurrencyObjectCanBeAdded() ) [4] => SebastianBergmann\Diff\Line Object ( [type:SebastianBergmann\Diff\Line:private] => 1 [content:SebastianBergmann\Diff\Line:private] => public function testAnotherMoneyObjectWithSameCurrencyCanBeAdded() ) [5] => SebastianBergmann\Diff\Line Object ( [type:SebastianBergmann\Diff\Line:private] => 3 [content:SebastianBergmann\Diff\Line:private] => { ) [6] => SebastianBergmann\Diff\Line Object ( [type:SebastianBergmann\Diff\Line:private] => 3 [content:SebastianBergmann\Diff\Line:private] => $a = new Money(1, new Currency('EUR')); ) [7] => SebastianBergmann\Diff\Line Object ( [type:SebastianBergmann\Diff\Line:private] => 3 [content:SebastianBergmann\Diff\Line:private] => $b = new Money(2, new Currency('EUR')); ) ) ) ) ) )


RequireJS loads plain JavaScript files as well as more defined modules. It is optimized for in-browser use, including in a Web Worker, but it can be used in other JavaScript environments, like Rhino and Node. It implements the Asynchronous Module API.
RequireJS uses plain script tags to load modules/files, so it should allow for easy debugging. It can be used simply to load existing JavaScript files, so you can add it to your existing project without having to re-write your JavaScript files.
RequireJS includes an optimization tool you can run as part of your packaging steps for deploying your code. The optimization tool can combine and minify your JavaScript files to allow for better performance.
If the JavaScript file defines a JavaScript module via define(), then there are other benefits RequireJS can offer: improvements over traditional CommonJS modules and loading multiple versions of a module in a page. RequireJS also has a plugin system that supports features like i18n string bundles, and text file dependencies.
RequireJS does not have any dependencies on a JavaScript framework. It is dual-licensed – new BSD or MIT.
The standard require.js file is around 5.5KB when minified via Closure Compiler and gzipped.
RequireJS works in IE 6+, Firefox 2+, Safari 3.2+, Chrome 3+, and Opera 10+.


Key features of our company
Why I started this company
I want to share my joy and passion with the world, with the intention of sharing the games I develop. the game I devlop. Are games that I enjoyed making a hint of what you want my to devlop because this is not just my company I want it to be comunity based.
Passion
My passion started when I was little and I took up coding ever since I started to code and it clicked for me. I love programming and i want to continue this passion.
Support
I want to provide the best support that I can. but I am the only one man company. Please be patient
The ones who runs this company
CEO & Founder
I started this company because of a burning passion for game development.
Never underestimate what you can do and the skills of the person greatly outweights the negtives. There is always a glimer of hope at he end of the tunnel only one step away form creating a burining passion which will never die out.
We specialise in Programiing and design with html js and css skills, c++, c# and SQL
Programming
Web Programming
Drawing
Lets get in touch. Send us a message:
Llandudno, UK
Email: oneupg64@gmail.com


{% extends "translator/base.html" %} {% block body %}
There was an error in Graasp validating your credentials. Please try again.


--- title: Shipyard Forms --- {% include page-heading.html page=page %}
Some critically important notes about this field.


一、作業系統
(一) Direct Communication
- Processes must name each other explicitly：
- send(P, message) – send a message to process P
- receive(Q, message) – receive a message from process Q
- Properties of communication link
- Links are established automatically
- A link is associated with exactly one pair of communicating processes
- Between each pair there exists exactly one link
- The link may be unidirectional, but is usually bi-directional
(二) Indirect Communication
- Messages are directed and received from mailboxes (also referred to as ports)
- Each mailbox has a unique id
- Processes can communicate only if they share a mailbox
- Properties of communication link
- Link established only if processes share a common mailbox
- A link may be associated with many processes
- Each pair of processes may share several communication links
- Link may be unidirectional or bi-directional
- Operations
- create a new mailbox
- send and receive messages through mailbox
- destroy a mailbox
- Primitives are defined as：
- send(A, message) – send a message to mailbox A
- receive(A, message) – receive a message from mailbox A
- Mailbox sharing
- Who gets the message？
- P 1 , P 2 , and P 3 share mailbox A
- P 1 , sends; P 2 and P 3 receive
- Who gets the message？
- Solutions
- Allow a link to be associated with at most two processes.
- Allow only one process at a time to execute a receive operation.
- Allow the system to select arbitrarily the receiver. Sender is notified who the receiver was.
(三) Synchronization
-
Message passing may be either blocking or non-blocking
- Blocking is considered synchronous
Blocking send
has the sender block until the message is receivedBlocking receive
has the receiver block until a message is available
- Non-blocking is considered asynchronous
Non-blocking send
has the sender send the message and continueNon-blocking receive
has the receiver receive a valid message or null
- Different combinations possible
- If both send and receive are blocking, we have a rendezvous
- Producer-consumer becomes trivial
(四) Buffering
- Queue of messages attached to the link; implemented in one of three ways
- Zero capacity – 0 messages Sender must wait for receiver (rendezvous)
- Bounded capacity – finite length of n messages Sender must wait if link full
- Unbounded capacity – infinite length Sender never waits
Examples of IPC Systems
1. POSIX
- POSIX Shared Memory
- Process first creates shared memory segment：
shm_fd = shm_open(name, O CREAT | O RDRW, 0666);
- Also used to open an existing segment to share it
- Set the size of the object：
ftruncate(shm fd, 4096);
- Now the process could write to the shared memory：
sprintf(shared memory, "Writing to shared memory");
- Process first creates shared memory segment：
2. Mach
- Mach communication is message based
- Even system calls are messages
- Each task gets two mailboxes at creation- Kernel and Notify
- Only three system calls needed for message transfer：
msg_send()
,msg_receive()
,msg_rpc()
- Mailboxes needed for commuication, created via：
port_allocate()
- Send and receive are flexible, for example four options if mailbox full：
- Wait indefinitely
- Wait at most n milliseconds
- Return immediately
- Temporarily cache a message
3. Windows
- Message-passing centric via
advanced local procedure call (LPC)
facility- Only works between processes on the same system
- Uses ports (like mailboxes) to establish and maintain communication channels
- Communication works as follows：
- The client opens a handle to the subsystem’s
connection port
object. - The client sends a connection request.
- The server creates two private
communication ports
and returns the handle to one of them to the client. - The client and server use the corresponding port handle to send messages or callbacks and to listen for replies.
- The client opens a handle to the subsystem’s
(五) Communications in Client-Server Systems
1. Sockets
- A socket is defined as an endpoint for communication
- Concatenation of
IP address
andport
– a number included at start of message packet to differentiate network services on a host- The socket <IP_ADDRESS>:1625 refers to port 1625 on host <IP_ADDRESS>
- Communication consists between a pair of sockets
- All ports below 1024 are well known, used for standard services
- Special IP address
<IP_ADDRESS> (loopback)
to refer to system on which process is running
2. Remote Procedure Calls
- Remote procedure call (RPC) abstracts procedure calls between processes on networked systems
- Again uses ports for service differentiation
- Stubs – client-side proxy for the actual procedure on the server
- The client-side stub locates the server and marshalls the parameters
- The server-side stub receives this message, unpacks the marshalled parameters, and performs the procedure on the server
- On Windows, stub code compile from specification written in Microsoft Interface Definition Language (MIDL)
- Data representation handled via External Data Representation (XDL) format to account for different architectures
Big-endian
andlittle-endian
- Remote communication has more failure scenarios than local
- Messages can be delivered
exactly once
rather thanat most once
- Messages can be delivered
- OS typically provides a rendezvous (or matchmaker) service to connect client and server
3. Pipes
- Acts as a conduit allowing two processes to communicate
- Issues
- Is communication unidirectional or bidirectional?
- In the case of two-way communication, is it half or full-duplex?
- Must there exist a relationship (i.e. parent-child) between the communicating processes?
- Can the pipes be used over a network?
課堂作業
client
部份
/* vim: ts=4 sw=4 et
*/
/* The second program is the producer and allows us to enter data for consumers.
It's very similar to shm1.c and looks like this. */
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <sys/shm.h>
#include "shm_com.h"
int main()
{
int running = 1;
void *shared_memory = (void *)0;
struct shared_use_st *shared_stuff;
char buffer[BUFSIZ];
int shmid;
int rand_arr[10];
shmid = shmget((key_t)1234, sizeof(struct shared_use_st), 0666 | IPC_CREAT);
if (shmid == -1) {
fprintf(stderr, "shmget failed\n");
exit(EXIT_FAILURE);
}
shared_memory = shmat(shmid, (void *)0, 0);
if (shared_memory == (void *)-1) {
fprintf(stderr, "shmat failed\n");
exit(EXIT_FAILURE);
}
printf("Memory attached at %X\n", (unsigned int)(long)shared_memory);
shared_stuff = (struct shared_use_st *)shared_memory;
while (1) {
while (shared_stuff->written_by_you == 1) {
sleep(1);
printf("waiting for client...\n");
}
/*
printf("\nPress Enter to continue...");
while (getchar() != '\n');
// fgets(buffer, BUFSIZ, stdin);
*/
srand((unsigned)time(NULL));
for (int i = 0; i < 10; i++) {
rand_arr[i] = rand() % 100 + 1;
shared_stuff->some_text[i] = rand_arr[i];
printf("[%d]%d \t", i, rand_arr[i]);
}
printf("\n");
// strncpy(shared_stuff->some_text, &rand_arr, TEXT_SZ);
shared_stuff->written_by_you = 1;
break;
}
if (shmdt(shared_memory) == -1) {
fprintf(stderr, "shmdt failed\n");
exit(EXIT_FAILURE);
}
exit(EXIT_SUCCESS);
}
server
部份
/* vim: ts=4 sw=4 et
*/
/* Our first program is a consumer. After the headers the shared memory segment
(the size of our shared memory structure) is created with a call to shmget,
with the IPC_CREAT bit specified. */
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <sys/shm.h>
#include "shm_com.h"
int main()
{
int running = 1;
void *shared_memory = (void *)0;
struct shared_use_st *shared_stuff;
int shmid;
srand((unsigned int)getpid());
shmid = shmget((key_t)1234, sizeof(struct shared_use_st), 0666 | IPC_CREAT);
if (shmid == -1) {
fprintf(stderr, "shmget failed\n");
exit(EXIT_FAILURE);
}
/* We now make the shared memory accessible to the program. */
shared_memory = shmat(shmid, (void *)0, 0);
if (shared_memory == (void *)-1) {
fprintf(stderr, "shmat failed\n");
exit(EXIT_FAILURE);
}
printf("Memory attached at %X\n", (unsigned int)(long)shared_memory);
/* The next portion of the program assigns the shared_memory segment to shared_stuff,
which then prints out any text in written_by_you. The loop continues until end is found
in written_by_you. The call to sleep forces the consumer to sit in its critical section,
which makes the producer wait. */
shared_stuff = (struct shared_use_st *)shared_memory;
shared_stuff->written_by_you = 0;
while (1) {
if (shared_stuff->written_by_you) {
printf("\nYou wrote:\n");
for (int i = 0; i < 10; i++) {
printf("[%d]%d \t", i, shared_stuff->some_text[i]);
}
printf("\n");
sleep(rand() % 4); /* make the other process wait for us ! */
// shared_stuff->written_by_you = 0;
shared_stuff->written_by_you = 0;
}
}
/* Lastly, the shared memory is detached and then deleted. */
if (shmdt(shared_memory) == -1) {
fprintf(stderr, "shmdt failed\n");
exit(EXIT_FAILURE);
}
if (shmctl(shmid, IPC_RMID, 0) == -1) {
fprintf(stderr, "shmctl(IPC_RMID) failed\n");
exit(EXIT_FAILURE);
}
exit(EXIT_SUCCESS);
}
- 執行結果
二、Linux 程式設計
(一) Shared Memory Concept
- 共享記憶體是由 IPC 為一程序所建立的特殊記憶體位址，其他的程序可以將此相同的 shared memory 區段納入自己的位址空間中，所有的程序皆可存取這些記憶體位址，就像是由自己定址一樣。
(二) Shared Memory Function
#include <sys/sem.h>
#include <sys/type.h>
#include <sys/ipc.h>
int shmget(key_t key, size_t size, int shmflg);
// 建立 shared memory 。
void *shmat(int shm_id, const void *shm_addr, int shmflg);
// 允許程序對 shared memory 存取。
int shmdt(const void *shm_addr);
// 讓目前的程序從 shared memory 脫離出來。
int shmctl( int shm_id, int cmd, struct shmid_ds *buf );
// 用來改變 shared memory 。
shmget()
int shmget(key_t key, size_t size, int shmflg);
- key: 用來為 shared memory 命名。
- size: 需要的 shared memory 大小，以 byte 為單位。
- shmflg: shared memory 的權限。在建立新的 shared memory 時要加上 IPC_CREATE。
*shmat()
void *shmat(int shm_id, const void *shm_addr, int shmflg);
- shm_id: Shared memory id.
- shm_addr: Shared memory 加到目前程序中的位址，通常為一 null 指標。
- shmflg: 一般設為 0 即可。
shmdt()
int shmdt(const void *shm_addr);
- shm_addr: shmat 傳回的位址。
shmctl()
int shmctl(int shm_id, int cmd, struct shmid_ds *buf);
- shm_id: Shared memory id.
- cmd:IPC_RMID: 刪除 shared memory 區段。
- struct shmid_ds:
struct shmid_ds {
uid_t shm_perm.uid;
uid_t shm_perm.gid;
mode_t shm_perm.mode;
}
課堂作業
client
部份
/* vim: ts=4 sw=4 et
*/
/* The second program is the producer and allows us to enter data for consumers.
It's very similar to shm1.c and looks like this. */
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <time.h>
#include <sys/shm.h>
#include "shm_com.h"
int main()
{
void *shared_memory = (void *)0;
struct shared_use_st *shared_stuff;
char buffer[BUFSIZ];
int shmid;
int rand_arr[10];
shmid = shmget((key_t)1234, sizeof(struct shared_use_st), 0666 | IPC_CREAT);
if (shmid == -1) {
fprintf(stderr, "shmget failed\n");
exit(EXIT_FAILURE);
}
shared_memory = shmat(shmid, (void *)0, 0);
if (shared_memory == (void *)-1) {
fprintf(stderr, "shmat failed\n");
exit(EXIT_FAILURE);
}
printf("Memory attached at %X\n", (unsigned int)(long)shared_memory);
shared_stuff = (struct shared_use_st *)shared_memory;
/* Initial the array */
for (int i = 0; i < 10; i++)
shared_stuff->some_text[i] = 0;
shared_stuff->written_by_you = 1;
shared_stuff->answer_by_you = 0;
while (1) {
while (shared_stuff->written_by_you == 1) {
sleep(1);
printf("Waiting for server...\n");
}
printf("\n【Server connected】\n");
/* Generate random number */
printf("Generate random number\n");
srand((unsigned)time(NULL));
for (int i = 0; i < 10; i++) {
rand_arr[i] = rand() % 100 + 1;
shared_stuff->some_text[i] = rand_arr[i];
}
shared_stuff->written_by_you = 2;
/* Wait for the sorted array */
printf("Wait for the sorted array...\n");
while (shared_stuff->answer_by_you == 0);
printf("The array (After Sorted)\n");
for (int i = 0; i < 10; i++) {
printf("[%d]%d \t", i, shared_stuff->some_text[i]);
}
printf("\n");
shared_stuff->written_by_you = 1;
shared_stuff->answer_by_you = 0;
break;
}
if (shmdt(shared_memory) == -1) {
fprintf(stderr, "shmdt failed\n");
exit(EXIT_FAILURE);
}
exit(EXIT_SUCCESS);
}
server
部份
/* vim: ts=4 sw=4 et
*/
/* Our first program is a consumer. After the headers the shared memory segment
(the size of our shared memory structure) is created with a call to shmget,
with the IPC_CREAT bit specified. */
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <sys/shm.h>
#include "shm_com.h"
int main()
{
void *shared_memory = (void *)0;
struct shared_use_st *shared_stuff;
int shmid;
srand((unsigned int)getpid());
shmid = shmget((key_t)1234, sizeof(struct shared_use_st), 0666 | IPC_CREAT);
if (shmid == -1) {
fprintf(stderr, "shmget failed\n");
exit(EXIT_FAILURE);
}
/* We now make the shared memory accessible to the program. */
shared_memory = shmat(shmid, (void *)0, 0);
if (shared_memory == (void *)-1) {
fprintf(stderr, "shmat failed\n");
exit(EXIT_FAILURE);
}
printf("Memory attached at %X\n", (unsigned int)(long)shared_memory);
/* The next portion of the program assigns the shared_memory segment to shared_stuff,
which then prints out any text in written_by_you. The loop continues until end is found
in written_by_you. The call to sleep forces the consumer to sit in its critical section,
which makes the producer wait. */
shared_stuff = (struct shared_use_st *)shared_memory;
shared_stuff->written_by_you = 1;
while (1) {
/* Wait for the client */
if (shared_stuff->written_by_you != 2)
shared_stuff->written_by_you = 0;
if (shared_stuff->written_by_you == 2) {
printf("\n【Get the client's array】\n");
printf("The array (Before Sorted)\n");
for (int i = 0; i < 10; i++) {
printf("[%d]%d \t", i, shared_stuff->some_text[i]);
}
printf("\n");
/* Sort the array */
shared_stuff->answer_by_you = 0;
int tmp = 0;
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 10 ; j++) {
if (shared_stuff->some_text[i] < shared_stuff->some_text[j]) {
tmp = shared_stuff->some_text[i];
shared_stuff->some_text[i] = shared_stuff->some_text[j];
shared_stuff->some_text[j] = tmp;
}
}
}
shared_stuff->answer_by_you = 1;
sleep(rand() % 4); /* make the other process wait for us ! */
shared_stuff->written_by_you = 1;
}
sleep(1);
}
/* Lastly, the shared memory is detached and then deleted. */
if (shmdt(shared_memory) == -1) {
fprintf(stderr, "shmdt failed\n");
exit(EXIT_FAILURE);
}
if (shmctl(shmid, IPC_RMID, 0) == -1) {
fprintf(stderr, "shmctl(IPC_RMID) failed\n");
exit(EXIT_FAILURE);
}
exit(EXIT_SUCCESS);
}
- 執行結果


Your letters for Nov. 6
by Calgary Herald"If you don't have cash for a new truck — or in the case of the city any project that we could do without i.e. BRT or art projects — you don't rob Peter to pay Paul to pay for it, you just stop spending."
Fix systemic problems in health before cutting
Paramedics are not overpaid, pampered or spoiled. We were under-resourced before, and now we’re broken.
Cost-cutting is better achieved through efficiency, not the lazy populist method of wage reduction without structural reform.
Our seniors, AISH, welfare and Indigenous populations are granted unlimited free taxpayer-funded ambulance transports. Daily we see this system being abused as a free taxi service. There is no satisfaction in telling a grieving spouse their partner is dead, knowing that we could have been there quicker. Much quicker, but we were tied up unnecessarily.
Dispatchers and paramedics have no legal authority to tell a patient that they don’t require an ambulance, that they should take a taxi to urgent care. Patients know this.
You want to cut 10 per cent of our costs? No problem. Fix our systemic problems. I’ll bet you could cut 15 per cent if those issues were fixed.
Lester Brayham, Calgary
Canadians should stop consuming oil before attacking the energy industry
Like most Canadians I have been watching the efforts of environmentalists designed to shut down Alberta’s energy industry. The most obvious problem with this is illogic. If Canadians truly wished to make a difference for the environment, recognize a responsibility to limit hydrocarbon consumption, not production. If all Canadian families had only one vehicle, for example, that would make an immediate and measurable difference. If demand for hydrocarbons suddenly shrunk, Albertans in the oil and gas industry would move on.  Most Canadians are not silly but it often seems that the country is being run by spoiled and tired 10 year olds. Just watch the recent leaders debate for evidence of this observation.
Graham Baugh, Calgary
The city can’t afford the BRT
I got some basic business advise from a very smart person once. When doing your budget, operational needs are first priority and capital expenditures are next. If you don’t have enough cash for operations, you decrease capital spending until the first is met. If you don’t have cash for a new truck — or in the case of the city any project that we could do without i.e. BRT or art projects — you don’t rob Peter to pay Paul to pay for it, you just stop spending. Enough already.
Randy Chomistek, Calgary
Ottawa haven’t helped First Nations
Re: Alberta’s separatist past has no place in this debate, Nov. 5
Braid makes some valid points in his op-ed. For one: The Crown land where First Nations reside will have to decide whether to join an independent Alberta or remain a dependent and subservient territory of the Canadian government. And Braid has the temerity to write their “flawed but essential relations with Ottawa.” What has Ottawa ever done for First Nations except make some chiefs very wealthy? If First Nations decide to join Alberta, they are Albertans first.
Jeffrey Anderson, Calgary


{{site.user_description}}
Specialized in several computer aided design softwares including Solidworks and Siemens NX. Knowledgable of geometric dimension and tolerancing (GD&T) and advanced CAD/CAM methods.
Highly experienced in Eagle PCB Design, in addition to other mechanical design integration softwares including LMS Test.Lab and AMESim. Using Altair Hyperworks, I have performed numerous Finite Element Analyses (FEA).
For part of my senior design, I integrated several circuits to an open source IoT platform. This experience made my want to widen my coding horizons to platforms such as Ruby and Linux. This website showcases my early coding journey.


--- creation_epoch:<PHONE_NUMBER> lastmod_epoch:<PHONE_NUMBER> categories: ['Tech Tricks'] title: Partition a usb key drive under Windows --- This guide will tell you how to create a single partition on a usb key drive under Windows XP. This does not allow you to have multiple drive letters for a usb drive. You can do a web search for tools that do that.
The main reason you would want to do this is if you needed the usb drive to have a valid partition versus a raw file system. Some USB drives come with no partitions and just a raw file system. Since the drive is marked as "Removable" in Windows you can't partition it with Disk Management in Windows. It is always possible to create the partitions in Linux, but you may not have a Linux machine handy. So if all you have is Windows, and you need the drive to have a valid partition table (for creating a bootable key later perhaps) then do the following:


STAR WARS A film review by Steve Rhodes Copyright 1996 Steve Rhodes
RATING (0 TO ****): ****
Almost twenty years after I as blown by the sheer majesty of STAR WARS, my seven year old son Jeffrey has turned from The Power Rangers to STAR WARS. This means I got to see it again for the first time through his young eyes. In all of the thousands of movies to which I have gone, STAR WARS is the only one where I was so pumped up when I saw it originally in 1977 that I told my wife we had to see it again immediately. I got her to move up with me to the fifth row at our then local (Paramus, New Jersey) monster screen house so that I could be right there in the thick of the action with the rebel warriors.
Since I originally saw it before I became I movie critic, I have never written a review of it. I will correct that omission now, but I will stick more to commentary and just highlight some of my favorite scenes. To be fair to both of the people on earth who do not know the story, let me sketch it out for them first.
The rebel alliance is fighting an evil Empire. The Empire is building a Death Star so powerful that it can blow up an entire planet. They must get the Empire's plans for the Death Star before it becomes fully operational. The rebels hope to analyze the plans and find a weakness that will allow them to destroy the Death Star before it destroys the rebel's home planets and bases. Lord Darth Vader (David Prowse acting with voice by James Earl Jones) and Grand Moff Tarkin (Peter Cushing) are on the side of the Empire whereas Luke Skywalker (Mark Hamill), Han Solo (Harrison Ford), Princess Leia Organa (Carrie Fisher), Ben "Obi-Wan" Kenobi (Alec Guinness), Chewbacca (Peter Mayhew), C3PO (Anthony Daniels), and R2D2 (Kenny Baker) end up fighting for the rebels.
Who would have guessed that young Harrison Ford would become the only big box office star out of the lot other than Alec Guinness who already was one? I incorrectly expected Mark Hamill to cash in on his fame, but other than the sequels, he basically vanished. Who were your favorite characters?
I was and still am fascinated by the hinted at but never fully developed chemistry between Luke and Princess Leia. I was impressed by the way Fisher played the princess as so tough and yet so regal a figure. She is also beautiful and very sexy. Jeffrey commented out of the blue on how pretty she is. Ford is hilarious, and it is still the funniest part he has ever done.
Guinness approached his role as if it had religious significance, and the monks robes he wore added to that dimension. Certainly the directing by George Lucas turned a band of mainly neophyte actors into an ensemble cast much as a new football coach might take a bunch of rookies and convince them that they were destined to win the championship their first season.
For evil, James Earl Jones's voice and the eerie sound effects of the pumping oxygen made for a forceful villain in Darth Vader. Most movies lose it in inappropriate villains, but George Lucas's script crafts just the right contrast and blend of good and evil. Moreover, the script, as I will demonstrate shortly, is funny and downright brilliant. The two best parts of the show were the special effects and the script. The effects are no longer quite so impressive, but the script is as strong today as it was then.
Let me now answer my original question. The best characters in the show are C3PO and R2D2. If you don't fall instantly in love with both of them, check yourself into the Ebenezer Scrooge Clinic to have your heart checked out.
The sets are so imaginative (John Barry, Leslie Dilley, and Norman Reynolds). From small details like the shiny black metal of the Death Star to the larger ones like the design of all of the weapons which are a mixture of the mechanical, the electrical, the old, and the new. Han Solo's ship the Millennium Falcon, for example, has weapons that have more in common with a B52 than what you will probably find in a future spaceship.
The best and funniest scene of the show has to be the bar scene. I could not imagine more effective designs than the costumes (John Mollo) and make-up (Stuart Freeborn) in that scene. I still laugh when I think about it.
Now back to the most important part, the script. Let me show some of what made this a seminal film in cinematic history while at the same time absolutely delighting its audiences. The mysterious force that pervades the universe is claimed to have ultimate power. As Darth Vader puts it, "The ability to destroy a planet is nothing next to the power of The Force."
When Luke first lays eyes on this expense spaceship they have rented, he explodes to Han Solo with, "What a piece of junk!" Han confidently defends her with, "She'll make .5 past light speed. She may not look like much, but she's got it where it counts." When Luke begins to panic later, Han puts him down with, "Traveling through hyperspace it not like dusting crops, boy." Han is not impressed by this Force rubbish saying, "Hokey religions and ancient weapons aren't as good as a blaster at your side." Even Princess Leia gets some funny material. Getting angry at the Abominable Snowman sized Chewbacca, she tells the others, "Will somebody get this big walking carpet out of my way?"
The quasi-religious figure of Obi-Wan has sayings with biblical rings to them. He advises Luke when they are in a seemingly hopeless situation that, "You can't win, but there are alternatives to fighting." When Han tries to put Obi-Wan down, Obi-Wan says, "Who is more foolish? The fool or the fool who follows the fool?"
The music by John Williams is incredible. It has your adrenaline pumping in almost every scene. Most musical scores are lucky if they have a single decent number. Williams's score is a cornucopia of musical wonder. I hope they will release STAR WARS again to the theaters soon. It seemed almost a sacrilege to watch it on merely a large TV screen with speakers not powerful enough to raise the dead.
STAR WARS runs 1:57 with perfect editing by Richard Chew, Paul Hirsch, and Marcia Lucas. It is correctly rated PG. There is no sex or nudity, and since this was before even PG movies felt obliged to include some bad words, there are none. There is cowboy level violence where people are shot with laser weapons called blasters and die bloodlessly and immediately. There are a couple of mildly scary scenes. One is of a brief shot of a severed and bloody arm and another is a shot from a distance of the charred remains of Luke's relatives. I think only kids under 5 will be scared by the show. Certainly Jeffrey (age 7) was not frightened, and he adored STAR WARS. I give it my top recommendation and rating of ****.
**** = One of the top few films of this or any year. A must see film. *** = Excellent show. Look for it. ** = Average movie. Kind of enjoyable. * = Poor show.  Totally unbearable.
REVIEW WRITTEN ON: April 15, 1996
Opinions expressed are mine and not meant to reflect my employer's.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Exeter shoppers appear unmoved by Black Friday offers
There were plenty of Black Friday offers to be found on Exeter High Street - but shoppers appeared to take little interest in them, with the city centre looking no different to any other Friday morning


This package contains the core retry framework classes; this page provides descriptions for the core classes, the key concepts, etc.
There are four primary components to the retry framework:
Detectors distinguish transient exceptions from non-transient exceptions. Transient exceptions are those that are retryable; non-transient exceptions are those that, no matter how many times you retry, will invariantly yield the same exceptions.
Examples of transient exceptions are socket closed, lock conflicts, etc. Examples of non-transient exceptions are syntax errors.
Retry strategies are algorithms that govern the behavior related to the the application of retry, the amount of time between retries, whether or how retry intervals change duration for each subsequent retry, etc.
There are several retry strategies available:
The framework can be easily extended to support retry for arbitrary use cases, such as for database, and communications. Out of the box the framework provides two retry policies, a generic retry Policy applicable to communications and similar patterns, then a SqlRetryPolicy applicable to JDBC usage scenarios.


Rainbow
Rainbow is looking to raise at least $200 for our team and livestreamed his gaming for 24 hours on October 25th. All donations are tax-deductible, so nothing is stopping you from helping out!
Watch Greg's stream


Namespace ZptSharp.Config
Classes
RenderingConfig
Represents per-operation configuration information which influences the behaviour of the rendering process. This class is immutable; use a builder to prepare & build configuration objects in a mutable manner.
RenderingConfig.Builder
A mutable API with the same properties as RenderingConfig. Allows setting up a desired state before being used to create an immutable configuration object via GetConfig().
Interfaces
IGetsRootContextBuilder
An object which gets a 'configuration callback' of sorts, which may configure/set-up the root rendering context. See also: ContextBuilder.
IStoresCurrentRenderingConfig
An object which provides access to the rendering configuration. This interface is only used within the scope of a rendering request, and so generally-speaking should not be used as part of the public API.


The Traveller from the South
[Screened at the Cinequest Film Festival 9, San Jose]
[3.5/4.0] (dialog in Farsi, English subtitles)
Reza Amri is a 14 year old boy making a trip from his home in southern Iran to Tehran to stay with his cousin and have a vacation. On the same train, in the next compartment to Reza's, is the elderly Mrs. Nasiri, who is travelling to Tehran to catch a flight to Germany so she can visit her son whom she has not seen for many years. Reza is initially put off by the cranky old woman, but during a brief train stop, he has a conversation with her and sympathizes with her plight. He has no set schedule, so he figures he could make himself useful and help her to the airport, because she seems to be in poor health and generally appears uncomfortable getting around by herself.
What initially appears to be a gesture of goodwill leads to a larger adventure. When Mrs. Nasiri collapses at the airport we learn that she has a serious heart condition. Reza is able to get her taken to the hospital but finds that since she has no insurance, she will have to pay cash for the necessary treatment. With the old woman now incapacitated, Reza takes it upon himself to become her temporary guardian. He must manage her possessions and try to exchange her Deutsch Marks and pawn her jewelry to raise the money she needs for her medical care.
With this simple story, director Parviz Shahbazi has created a moving and convincing picture of life in modern day Iran. Westerners have a very limited exposure to Persian culture, and Americans especially have kept a stilted view of it since the Islamic Revolution and accompanying American hostage incident. It is refreshing to see a perspective from inside that nation that gives an insight to many of the mundane aspect of daily life. Like in many other developing countries, it is necessary to have street smarts and a good knowledge of how the system operates in order to get anything accomplished. Reza is an extremely resourceful person and genuinely enjoys the challenge of haggling fares with taxi drivers and negotiating a place to spend the night with a hospital night watchman. Still, despite the amount of ruggedness required of individuals, there are many small acts of generosity and hospitality on the part of strangers that is often absent in other cultures.
An unbelievably strong performance is given by the young actor Reza Moghadam as Reza. A tremendous challenge presented by the role is the sparseness of dialog. Much of the story consists of Reza navigating the city and most of the time Moghadam must use solely his physical expressiveness to sculpt the character. He aptly defines the character of the quiet but plucky boy who shows maturity beyond his years by taking on responsibility that is in no way required of him. From his ability to negotiate resourcefully with store clerks and hospital administrators, to his fierce pride in his cultural background, we see a character of tremendous depth that is a result of both superb writing and acting.
Because most of the action is filmed on location, there is the feeling that what is being watched is not a narrative film but rather a voyeuristic documentary. Just as one would expect if one were following a person around, we see Reza simply gazing out the window of a bus, small children running around playing or picking their nose. Given its basis, the story could have easily become a melodramatic tragedy, or an uplifting morality tale. Thankfully it avoids both of these and simply tells the story of charming boy, and a charming country.
Highly recommended, a must-see for anyone interested viewing daily life in another culture. It is a simple but poignant story, and a brilliant performance by a young actor. It is a very compelling portrait of life in Iran. Deservedly, this film won the Maverick competition at Cinequest.
(c) 1999 Murali Krishnan The Art House Squatter http://pages.hotbot.com/movies/murali24/
-----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


"""distutils.command.build_clib Implements the Distutils 'build_clib' command, to build a C/C++ library that is included in the module distribution and needed by an extension module.""" # XXX this module has *lots* of code ripped-off quite transparently from # build_ext.py -- not surprisingly really, as the work required to build # a static library from a collection of C source files is not really all # that different from what's required to build a shared object file from # a collection of C source files. Nevertheless, I haven't done the # necessary refactoring to account for the overlap in code between the # two modules, mainly because a number of subtle details changed in the # cut 'n paste. Sigh. import os from distutils.core import Command from distutils.errors import * from distutils.sysconfig import customize_compiler from distutils import log def show_compilers(): from distutils.ccompiler import show_compilers show_compilers() class build_clib(Command): description = "build C/C++ libraries used by Python extensions" user_options = [ ('build-clib=', 'b', "directory to build C/C++ libraries to"), ('build-temp=', 't', "directory to put temporary build by-products"), ('debug', 'g', "compile with debugging information"), ('force', 'f', "forcibly build everything (ignore file timestamps)"), ('compiler=', 'c', "specify the compiler type"), ] boolean_options = ['debug', 'force'] help_options = [ ('help-compiler', None, "list available compilers", show_compilers), ] def initialize_options(self): self.build_clib = None self.build_temp = None # List of libraries to build self.libraries = None # Compilation options for all libraries self.include_dirs = None self.define = None self.undef = None self.debug = None self.force = 0 self.compiler = None def finalize_options(self): # This might be confusing: both build-clib and build-temp default # to build-temp as defined by the "build" command. This is because # I think that C libraries are really just temporary build # by-products, at least from the point of view of building Python # extensions -- but I want to keep my options open. self.set_undefined_options('build', ('build_temp', 'build_clib'), ('build_temp', 'build_temp'), ('compiler', 'compiler'), ('debug', 'debug'), ('force', 'force')) self.libraries = self.distribution.libraries if self.libraries: self.check_library_list(self.libraries) if self.include_dirs is None: self.include_dirs = self.distribution.include_dirs or [] if isinstance(self.include_dirs, str): self.include_dirs = self.include_dirs.split(os.pathsep) # XXX same as for build_ext -- what about 'self.define' and # 'self.undef' ? def run(self): if not self.libraries: return # Yech -- this is cut 'n pasted from build_ext.py! from distutils.ccompiler import new_compiler self.compiler = new_compiler(compiler=self.compiler, dry_run=self.dry_run, force=self.force) customize_compiler(self.compiler) if self.include_dirs is not None: self.compiler.set_include_dirs(self.include_dirs) if self.define is not None: # 'define' option is a list of (name,value) tuples for (name,value) in self.define: self.compiler.define_macro(name, value) if self.undef is not None: for macro in self.undef: self.compiler.undefine_macro(macro) self.build_libraries(self.libraries) def check_library_list(self, libraries): """Ensure that the list of libraries is valid. `library` is presumably provided as a command option 'libraries'. This method checks that it is a list of 2-tuples, where the tuples are (library_name, build_info_dict). Raise DistutilsSetupError if the structure is invalid anywhere; just returns otherwise. """ if not isinstance(libraries, list): raise DistutilsSetupError( "'libraries' option must be a list of tuples") for lib in libraries: if not isinstance(lib, tuple) and len(lib) != 2: raise DistutilsSetupError( "each element of 'libraries' must a 2-tuple") name, build_info = lib if not isinstance(name, str): raise DistutilsSetupError( "first element of each tuple in 'libraries' " "must be a string (the library name)") if '/' in name or (os.sep != '/' and os.sep in name): raise DistutilsSetupError("bad library name '%s': " "may not contain directory separators" % lib[0]) if not isinstance(build_info, dict): raise DistutilsSetupError( "second element of each tuple in 'libraries' " "must be a dictionary (build info)") def get_library_names(self): # Assume the library list is valid -- 'check_library_list()' is # called from 'finalize_options()', so it should be! if not self.libraries: return None lib_names = [] for (lib_name, build_info) in self.libraries: lib_names.append(lib_name) return lib_names def get_source_files(self): self.check_library_list(self.libraries) filenames = [] for (lib_name, build_info) in self.libraries: sources = build_info.get('sources') if sources is None or not isinstance(sources, (list, tuple)): raise DistutilsSetupError( "in 'libraries' option (library '%s'), " "'sources' must be present and must be " "a list of source filenames" % lib_name) filenames.extend(sources) return filenames def build_libraries(self, libraries): for (lib_name, build_info) in libraries: sources = build_info.get('sources') if sources is None or not isinstance(sources, (list, tuple)): raise DistutilsSetupError( "in 'libraries' option (library '%s'), " "'sources' must be present and must be " "a list of source filenames" % lib_name) sources = list(sources) log.info("building '%s' library", lib_name) # First, compile the source code to object files in the library # directory. (This should probably change to putting object # files in a temporary build directory.) macros = build_info.get('macros') include_dirs = build_info.get('include_dirs') objects = self.compiler.compile(sources, output_dir=self.build_temp, macros=macros, include_dirs=include_dirs, debug=self.debug) # Now "link" the object files together into a static library. # (On Unix at least, this isn't really linking -- it just # builds an archive. Whatever.) self.compiler.create_static_lib(objects, lib_name, output_dir=self.build_clib, debug=self.debug)


Advanced Search
Search for your reference
Pet's Breed
The Pet gets on well with:
Search
{$breed.breed_name}
Garden
Children
Other Pets
The Pet would like:
The Pet want a helper at:
Exercise
Company
Day
Evening
Weekend
Holiday
Search Results


Let ABCD be a parallelogram, and AC its diameter, and about AC let EH and FG be parallelograms, and BK and KD the so-called complements.
I say that the complement BK equals the complement KD.
Since ABCD is a parallelogram, and AC its diameter, therefore the triangle ABC equals the triangle ACD.
Again, since EH is a parallelogram, and AK is its diameter, therefore the triangle AEK equals the triangle AHK. For the same reason the triangle KFC also equals KGC.
Now, since the triangle AEK equals the triangle AHK, and KFC equals KGC, therefore the triangle AEK together with KGC equals the triangle AHK together with KFC.
And the whole triangle ABC also equals the whole ADC, therefore the remaining complement BK equals the remaining complement KD.
Therefore in any parallelogram the complements of the parallelograms about the diameter equal one another.


Accommodation
Restaurants & Bars
Sightseeing
Register
Register
Log In
Log In
Username
Password
Remember Me
Forgot Password?
Username
Profile
Edit profile
Add item
Logout

Share
We help you to plan better, faster & cheaper
Search


Sculpture is the branch of the visual arts that operates in three dimensions. It is one of the plastic arts. Durable sculptural processes originally used carving (the removal of material) and modelling (the addition of material, as clay), in stone, metal, ceramics, wood and other materials but, since Modernism, there has been an almost complete freedom of materials and process. A wide variety of materials may be worked by removal such as carving, assembled by welding or modelling, or molded or cast.
| SIR JJ School of art Dr. D. N. Road, Fort, Mumbai, Maharashtra 400001 India |
|---|
| Government college of fine arts E.V.R. High Road Periyamet, Chennai Tamil Nadu 600003 India |
|---|


Currently playing the role of Research Architect in Digital Innovation Workspace at Innovation Lab - Hexaware Technologies Limited.
(Jan 2014 - Present)
I am a passionate coder and researcher with key interests in Mobile and latest Digital Technologies like AI,AR,VR and Bots.Every update in any of the technological tech trends bring a new energy and entusiasm in me.
I start my day with learning and end it with knowledge.
Passionate and handson on various Augmented Reality, Virtual Reality and Mixed Reality frameworks and devices.
Also worked on various Image Recognition engines for some of my proof of concepts and project development.
Currently working on implementing Virtual Reality & Augmented Reality in Enterprise Space using platforms like ARkit,ARcore , Oculus Rift,HTC Vive ,Google Cardboard,Samsung GearVR and Microsoft's Hololens.
Expertise on various Bot Building platforms .Developed more than 50+ voice bots as well was chatbots .Some of them are live on social messaging platform like FB Messenger.
Complete expertise in deploying bots on for B-B,B-C,B-E use cases on Social Messenger as well as enterprise collaboration tools like Skype for Business,Teams. Worked on various AI engines for bots like DialogFlow,Watson,Lex,Poly,Alexa Skill kit,Wit.ai etc.
Professional Expertise in Enterprise Application Development Android & iOS and Wearable Devices.
Developed Enterprise Application on Google Glass using GDK platform .Developed Enterprise Applications on Platform Like Android Wear,AppleWatchKit,Pebble Watch Apps.
Developed Various Enterprise Solution on Vuzix M100 Smart Glasses showcasing Technologies like OCR,OpenCV and AR.


{% extends "notifications/notification.html" %} {% block subject %}{{subject}}{% endblock %} {% block email %}{{content}}{% endblock %} {% block text %}
You have received an email: {{subject}}


The CALL opcode (used to send messages to other contracts, or send funds to non-contract accounts) will fail if it causes
the call stack to exceed 1024 frames.
This is not an exception: instead, the CALL operation indicates an error, instead of returning data from the
callee contract. These errors cannot be disproved by static analysis, as the available number of call-stack frames
depends upon the exact runtime environment
(Source).
In the verification process the runtime sequence will be analysed to find this vulnerability.


Space Blog
Subscribe and get our monthly newsletter in your inbox.
- Product resources
- 7 min read
Introduction to marketing and selling payments for SaaS platforms
SaaS platforms are often looking for ways to offer complementary services that add extra value for their customers.
Inhouse Design Thinking – How I deal with it?
After an experience in supporting companies in the creation of innovative user-centric services, I joined a large industrial group...
UX writing: Copy is an integral part of ux design
When we talk about digital products or interfaces, we get more concentrated on visual elements such as illustrations, buttons, animations, colors and more...
Design is not only Design sprint. It is a marathon
Design is not only design sprint. Design is a state of mind and takes time to build products and services that bring values to customers.
We are design changers
Get a weekly dose of insightful people strategy content, helpful resources, new job opportunities, and people-driven events.
- Space update
- Use case
- 2 min read
Space Advisory Services launches to improve people strategy initiatives at Scale
The Space Advisory Services group was established to provide unbiased guidance.
When your process become a storyboard
Discover how to transform a complex process into a simple storyboard easy to do and understand.
- Industry updates
- 3 min read
Online fraud trends and behavior
In 2016, an estimated 1.61 billion people worldwide purchased goods online, and global e-retail sales amounted to $1.9 trillion.
Space partners with ADP to offer an integration for seamless people management
With Space’s new integration for ADP can easily share and manage their employee data between the two platforms.
- Design
- 3 min read
Do I need a UX/UI Designer, UX researcher, UX strategist?
How to choose between a UX/UI Designer, UX researcher, UX strategist or another designer.
- Interview
- 4 min read
Romain Briaux, designing a designer!
Romain Briaux was born in 1989, and at only 30 years old, his trajectory is impressive. When he is asked how he describes himself, he responds, "designer but in a broad sense". His projects?
Ready to get started?
Click below to access the Space API or join the Discord channel to share your solutions with the world


Thomas Finley, April 2000
Two's complement is not a complicated scheme and is not well served by anything lengthly. Therefore, after this introduction, which explains what two's complement is and how to use it, there are mostly examples.
Two's complement is the way every computer I know of chooses to represent integers. To get the two's complement negative notation of an integer, you write out the number in binary. You then invert the digits, and add one to the result.
Suppose we're working with 8 bit quantities (for simplicity's sake) and suppose we want to find how -28 would be expressed in two's complement notation. First we write out 28 in binary form.
00011100
Then we invert the digits. 0 becomes 1, 1 becomes 0.
11100011
Then we add 1.
11100100
That is how one would write -28 in 8 bit binary.
Use the number 0xFFFFFFFF as an example. In binary, that is:
1111 1111 1111 1111 1111 1111 1111 1111
What can we say about this number? It's first (leftmost) bit is 1, which means that this represents a number that is negative. That's just the way that things are in two's complement: a leading 1 means the number is negative, a leading 0 means the number is 0 or positive.
To see what this number is a negative of, we reverse the sign of this number. But how to do that? The class notes say (on 3.17) that to reverse the sign you simply invert the bits (0 goes to 1, and 1 to 0) and add one to the resulting number.
The inversion of that binary number is, obviously:
0000 0000 0000 0000 0000 0000 0000 0000Then we add one.
0000 0000 0000 0000 0000 0000 0000 0001
So the negative of 0xFFFFFFFF is 0x00000001, more commonly known as 1. So 0xFFFFFFFF is -1.
Note that this works both ways. If you have -30, and want to represent it in 2's complement, you take the binary representation of 30:
0000 0000 0000 0000 0000 0000 0001 1110
Invert the digits.
1111 1111 1111 1111 1111 1111 1110 0001
And add one.
1111 1111 1111 1111 1111 1111 1110 0010
Converted back into hex, this is 0xFFFFFFE2. And indeed, suppose you have this code:
#includeint main() { int myInt; myInt = 0xFFFFFFE2; printf("%d\n",myInt); return 0; }
That should yield an output of -30. Try it out if you like.
One of the nice properties of two's complement is that addition and subtraction is made very simple. With a system like two's complement, the circuitry for addition and subtraction can be unified, whereas otherwise they would have to be treated as separate operations.
In the examples in this section, I do addition and subtraction in two's complement, but you'll notice that every time I do actual operations with binary numbers I am always adding.
Suppose we want to add two numbers 69 and 12 together. If we're to use decimal, we see the sum is 81. But let's use binary instead, since that's what the computer uses.
1 1 |
Carry Row |
0000 0000 0000 0000 0000 0000 0100 0101 |
(69) |
+ 0000 0000 0000 0000 0000 0000 0000 1100 |
(12) |
0000 0000 0000 0000 0000 0000 0101 0001 |
(81) |
Now suppose we want to subtract 12 from 69. Now, 69 - 12 = 69 + (-12). To get the negative of 12 we take its binary representation, invert, and add one.
0000 0000 0000 0000 0000 0000 0000 1100
Invert the digits.
1111 1111 1111 1111 1111 1111 1111 0011
And add one.
1111 1111 1111 1111 1111 1111 1111 0100
The last is the binary representation for -12. As before, we'll add the two numbers together.
1111 1111 1111 1111 1111 1111 1 1 |
Carry Row |
0000 0000 0000 0000 0000 0000 0100 0101 |
(69) |
+ 1111 1111 1111 1111 1111 1111 1111 0100 |
(-12) |
0000 0000 0000 0000 0000 0000 0011 1001 |
(57) |
We result in 57, which is 69-12.
Lastly, we'll subtract 69 from 12. Similar to our operation in example 2, 12 - 69 = 12 + (- 69). The two's complement representation of 69 is the following. I assume you've had enough illustrations of inverting and adding one.
1111 1111 1111 1111 1111 1111 1011 1011So we add this number to 12.
111 |
Carry Row |
0000 0000 0000 0000 0000 0000 0000 1100 |
(12) |
+ 1111 1111 1111 1111 1111 1111 1011 1011 |
(-69) |
1111 1111 1111 1111 1111 1111 1100 0111 |
(-57) |
This results in 12 - 69 = -57, which is correct.
Invert and add one. Invert and add one. It works, and you may want to know why. If you don't care, skip this, as it is hardly essential. This is only intended for those curious as to why that rather strange technique actually makes mathematical sense.

Remember the old trick we learned in first grade of "borrowing one's" from future ten's places to perform a subtraction? You may not, so I'll go over it. As an example, I'll do 93702 minus 58358.
93702 - 58358 -------
Now, then, what's the answer to this computation? We'll start at the least significant digit, and subtract term by term. We can't subtract 8 from 2, so we'll borrow a digit from the next most significant place (the tens place) to make it 12 minus 8. 12 minus 8 is 4, and we note a 1 digit above the ten's column to signify that we must remember to subtract by one on the next iteration.
1 93702 - 58358 ------- 4
This next iteration is 0 minus 5, and minus 1, or 0 minus 6. Again, we can't do 0 minus 6, so we borrow from the next most significant figure once more to make that 10 minus 6, which is 4.
11 93702 - 58358 ------- 44
This next iteration is 7 minus 3, and minus 1, or 7 minus 4. This is 3. We don't have to borrow this time.
11 93702 - 58358 ------- 344
This next iteration is 3 minus 8. Again, we must borrow to make thi 13 minus 8, or 5.
1 11 93702 - 58358 ------- 5344
This next iteration is 9 minus 5, and minus 1, or 9 minus 6. This is 3. We don't have to borrow this time.
1 11 93702 - 58358 ------- 35344
So 93702 minus 58358 is 35344.
When you want to find the negative of a number, you take the number, and subtract it from zero. Now, suppose we're really stupid, like a computer, and instead of simply writing a negative sign in front of a number A when we subtract A from 0, we actually go through the steps of subtracting A from 0.
Take the following idiotic computation of 0 minus 3:
000000 - 3 ------ |
1 000000 - 3 ------ 7 |
11 000000 - 3 ------ 97 |
111 000000 - 3 ------ 997 |
1111 000000 - 3 ------ 9997 |
Et cetera, et cetera. We'd wind up with a number composed of a 7 in the one's digit, a 9 in every digit more significant than the 100's place.
We can do more or less the same thing with binary. In this example I use 8 bit binary numbers, but the principle is the same for both 8 bit binary numbers (chars) and 32 bit binary numbers (ints). I take the number 75 (in 8 bit binary that is 010010112) and subtract that from zero.
Sometimes I am in the position where I am subtracting 1 from zero, and also subtracting another borrowed 1 against it.
00000000 - 01001011 ---------- |
1 00000000 - 01001011 ---------- 1 |
11 00000000 - 01001011 ---------- 01 |
111 00000000 - 01001011 ---------- 101 |
1111 00000000 - 01001011 ---------- 0101 |
11111 00000000 - 01001011 ---------- 10101 |
111111 00000000 - 01001011 ---------- 110101 |
1111111 00000000 - 01001011 ---------- 0110101 |
11111111 00000000 - 01001011 ---------- 10110101 |
If we wanted we could go further, but there would be no point. Inside of a computer the result of this computation would be assigned to an eight bit variable, so any bits beyond the eighth would be discarded.
With the fact that we'll simply disregard any extra digits in mind, what difference would it make to the end result to have subtracted 01001011 from 100000000 (a one bit followed by 8 zero bits) rather than 0? There is none. If we do that, we wind up with the same result:
11111111 100000000 - 01001011 ---------- 010110101
So to find the negative of an n-bit number in a computer, subtract the number from 0 or subtract it from 2n. In binary, this power of two will be a one bit followed by n zero bits.
In the case of 8-bit numbers, it will answer just as well if we subtract our number from (1 + 11111111) rather than 100000000.
1 + 11111111 - 01001011 ----------
In binary, when we subtract a number A from a number of all 1 bits, what we're doing is inverting the bits of A. So the subtract operation is the equivalent of inverting the bits of the number. Then, we add one.
So, to the computer, taking the negative of a number, that is, subtracting a number from 0, is the same as inverting the bits and adding one, which is where the trick comes from.


Rush Home Page
2112
RUSH
Released: April 1 1976
Band Members and Producers
Geddy Lee - Bass,
Alex Lifeson - Guitar,
Neil Peart- Drums
Tracks
Track
Title
Length
1
Temple of Syrinx
12:01
2
Overture
15:01
3
By the Stream
5:01


×
Enter Water QC Data
Water QC
Data Entry
Please do not use this form for Water Quality data entry
First Name:
Last Name:
Password:
Site:
Site List
Date:
Time:
Kit Number
Sample ID
Salinity
(ppt)
:
N/A
pH:
N/A
Effort
(hrs)
:
Comments
(optional)
Mouse over any input field for help.
Submit
Name:
Site ID:
Date:
(!)
Time:
Salinity:
pH:
(!)
Effort:
Comments:


Manager
Job Responsbilities
| Qualification | Institute | Location | Year |
| CNC Lathe Programming | McDonnell Douglas Aircraft | Southern California | 1980 |
| A.S. Electronics | DeVry Institute Of Technology | Phoenix AZ. | 1984 |
| HVAC Commercial | Capitol City Trade Institute | Austin TX. | 2003 |
| Codeup BootCamp for Programming | 'GeekDom' Weston Building | San Antonio TX. | 2014 |


Techquest it’s origin to the application of modern software development best practices to the School Management ERP Software. Originally part of Pathfinder Development, a custom software development firm founded in 2015, Orthogonal was spun out in 2016 to focus on our growing expertise in Website Designing, Website Development and Digital Marketing Company which are also expertise in the field of creative Website Designing and Search Engine Optimization (SEO).Our leadership team brings deep experience and perspective from multiple industries to bear on the challenges of connected care systems .We are a group of energetic technical savvies who are always hungry for latest innovation technologies on web. We are motivated to apply all the technology evolution strategies in our projects. We work for the client's satisfaction and will stand with you to grow your business organically. Running a business not only requires hard work but also requires effective smart work. We shall do both the works for an unbelievable cost!
Devising Mobility solution to automate business process for any Enterprises is the key to success in this era of modern age. We are providing state-of-the-art Mobility solution wherein we create advanced Mobile Apps, device compatibility solutions, modern system independent solutions for Enterprises.
Techquest is highly proficient and experienced Company is work of art and knowledge at the same time and whenever somebody lacks any of the factors the products is not up to the mark but with our Staff we have been serving up that standard always. Onisol Systems motive has always been development of software that ensures the success of all stages of offshore custom software development processes.Our Custom Software Development process includes selection
Techquest built a strong reputation as a leading website designing company by sheer hard work and dedication to build web pages and building websites that are good looking, technically excellent and affordable and search-engine friendly for small businesses, corporations, organizations and individuals. We are designing websites and running those for minimal charges for many big firms of M.P. and other Cities. Our clients are from vivid parts of the country.
Techquest also work Internet Digital Marketing field. We are one of the few companies that are doing reliable and successful Internet Marketing. Internet Marketing Services is for everyone be it a Businessmen or a shop owner. Here you will experience instant results as soon your site is ready and uploaded. We provide different types of internet marketing services likes SEO, SMO, Pay-Per-Click (PPC) ad campaigns.


ICF Cup in Pune
by Special CorrespondentNEW DELHIPune’s PYC Gymkhana Club will host the eighth ICF Cup carrom championship from December 2 to 6.
This will be the second time for the International Carrom Federation (ICF) Cup to be hosted in India, after Delhi in 2011. The tournament was earlier played in United Kingdom, France, Sri Lanka and Malaysia.
In a release issued here on Saturday, the secretary-general of All India Carrom Federation, Bharti Narayan, said players from 16 countries are scheduled to compete in the tournament, which would have three events, Swiss league team event, apart from individual championships for men and women.
Indian teams:
Men: Prashant More, Irshad Ahmed Ansari, Zaheer Pasha, Rajesh Dhanji Gohil.
Women: Rashmi Kumari, Aisha Sajid, S. Appoorwa, K. Nagajothi.
Coach and Manager: Maria Irudayam; Women’s manager: Anupama Kedar.


§235-27 Allocation of interest and dividends. Interest and dividends are allocable to this State if the taxpayer's commercial domicile is in this State. [L 1967, c 33, pt of §1; HRS §235-27]


With this program Isogons (Ramsay, 1967, S. 365) can be drawn in a fold profile. A picture of the fold profile must exist as *.bmp, *.gif, *.tif, *.jpg, *wmf, or *.emf file, or the picture is saved on the clipboard.
The graphic can be saved and/or printed at any time.


This puzzle presents a bunch of cooking videos, but not only is every mention of an ingredient bleeped out, but the ingredients themselves are not shown in the videos! Using visual and audio clues along with cooking knowledge, solvers can deduce what dish is being cooked.
The precise recipes are not canonical, and some substitutions could be made - for example, the video for chocolate chip cookies would also work as peanut butter chip cookies. However, each dish is missing a very important and unambiguous ingredient.
Reference recipes for each dish, each bleeped ingredient, and the missing ingredient are, in the order they appear in the puzzle:
| Dish | Ingredients (in video bleep order) | Missing ingredient | Comments |
|---|---|---|---|
| Marshmallows | Gelatin, sugar, light corn syrup, salt, vanilla, powdered sugar, cornstarch | Water | Molasses, which was a major part of the theme of Mystery Hunt 2019, appears in dark corn syrup but not light corn syrup. Also, granulated sugar can be blended to turn it into powdered sugar, and cornstarch can be used to make non-Newtonian fluid. |
| Bread | Sugar, salt, water, flour, oil | Yeast | The bowl is white - yeast would be very visible in this bowl, while it would be harder to see sugar and salt. |
| Chocolate chip cookies | Baking soda, salt, butter, sugar, brown sugar, vanilla, eggs, chocolate chips | Flour | The quantities of dry ingredients are too small for them to be the flour. |
| French fries | Potatoes, water, oil | Salt | Double-frying should make this one pretty clear. |
| Pasta aglio e olio | Water, salt, pasta, garlic, Parmesan cheese, pepper, salt, parsley, red pepper flakes | Olive oil | Apparently the inclusion of cheese in this dish is controversial, but it was included to avoid being a red herring. |
| French onion soup | Butter, garlic, bay leaves, thyme, pepper, salt, wine, bay leaves, stock, bread, cheese | Onion | The onions can be disambiguated from garlic by the fact that onions are not usually "finely minced" in this dish. |
| Pesto | Basil, pine nuts, Parmesan cheese, olive oil, salt, pepper | Garlic | "Nice, crunchy" and the comment about substitutions should disambiguate pine nuts from garlic. While raw garlic is crunchy, it would be strange to describe it that way, and it seems far more likely that someone would try to substitute pine nuts than garlic. |
| Shakshouka | Onion, bell pepper, garlic, olive oil, paprika, cumin, salt, pepper, eggs, pita | Tomato | Tomato is distinguished from onion and bell pepper in this dish by the timing - it wouldn't get cooked at the very start. |
| Caprese salad | Balsamic vinegar, tomatoes, basil, balsamic vinegar, olive oil, salt, pepper | Mozzarella cheese | This salad can be distinguished from others by the balsamic reduction and freshly picked basil. |
| Cornbread | All-purpose flour, baking soda, baking powder, salt, butter, brown sugar, honey, egg, buttermilk, vinegar, milk | Cornmeal | Baking powder is indeed made of baking soda, along with some cream of tartar and sometimes cornstarch. The honey and buttermilk should disambiguate this from other recipes. |
The missing ingredients can themselves be combined to make a dish. In fact, they appear in the order they might be used in a simple recipe for a PIZZA, the answer to this puzzle.


\[Y_t = \{y_1, \ldots, y_T \}\]
See an example that Daniel McLaury gives
Another example of the Monthly U.S. airline passenger-miles: 01/1996 - 05/2005.
mean function
\[ \mu_t = E(Y_t) = \sum_{i = 1}^T y_i /T\]
autocovariance function
\[ \begin{split} \gamma_{t,s} & = Cov(Y_t, Y_s) \\ & = E((Y_t - \mu_t)(Y_s - \mu_s)) \\ & = E(Y_t Y_s) - \mu_t \mu_s \end{split} \]
autocorrelation function
\[ \begin{split} \rho_{t,s} & = \frac{ Cov(Y_t, Y_s)}{\sqrt{ Var(Y_t) Var(Y_s)}} \\ & = \frac{\gamma_{t,s}}{\sqrt{\gamma_{t,t} \gamma_{s,s}}} \end{split} \]
The properties of \(\rho_{t,s}\)? range?
Let \(e_1 , e_2 ,...\) be a sequence of independent, identically distributed random variables each with zero mean and variance \(\sigma_{e}^2\).
\[ \begin{aligned} Y_1 &= e_1 \\ Y_2 &= Y_1 + e_2 \\ ...& \\ Y_t &= Y_{t-1} + e_t \\ \end{aligned} \]
Properties of random walk? Mean and Variance
A random process \({X(t),t \in T}\) is stationary if its statistical properties do not change by time.
Random walk is stationary?
eps = rnorm(10000)
randomwalk = cumsum(eps)
plot(randomwalk, type = "l")
acf(randomwalk)
pacf(randomwalk)
plot(eps, type = "l")
acf(eps)
pacf(eps)
You can write a trend-stationary process, \(y_t\), as
\[y_t= \mu_t+\epsilon_t\]
where:
\(\mu_t\) is a deterministic mean trend.
\(\epsilon_t\) is a stationary stochastic process with mean zero.
You can write a difference stationary process, \(y_t\), as
\[ \Delta^D y_t= \mu + \epsilon_t\]
where:
D is D th-degree differencing operator.
\(\mu\) is a constant.
\(\epsilon_t\) is a stationary stochastic process with mean zero.
Make your guess?
Trend Stationary or Difference Stationary
acf(trend_stationary)
pacf(trend_stationary)
acf(diff_stationary)
pacf(diff_stationary)


Everest Base Camp trek is quite simply the classic trek in Nepal. High in the priority list of trekkers, the Everest Base Camp is one of the most visited regions in the Himalaya. The two week trek starts and finishes at Lukla, an airstrip to the south of the region also known as the ‘Gateway to Everest’. Most trekkers fly to Lukla, to begin the trek. It is noted that Lukla Airport is the highest altitude Airport and one of the dangerous Airport to land and take off.
Read more ▶Put your hands together and say Namaste and smile as they return your gesture with genuine smiles of acceptance. 'You are welcome, you are our guests' say the friendly smiles. Nepali people are some of the friendliest people in the world whiich is one of the reasons visitors keep coming back.
Read more ▶


Contains the name of the product to which the element applies. This is a property attribute which supports conditional processing for filtering or flagging. If no value is specified, but the attribute is specified on an ancestor within a map or within the related-links section, the value will cascade from the closest ancestor. The attribute takes a space-delimited set of values.


May These Missing ‘Sword and Shield’ Pokemon Rest in Peace
by Jordan MinorPokemon Sword and Shield are finally here, and as more folks get their hands on the first core Pokemon RPGs for Nintendo Switch, a lot of the controversy that plagued these games since their reveal has slowly faded away. I had plenty of issues with the games, but most of them paled in comparison to how close it gets to being the lush open-world Pokemon adventure of our dreams.
The downside is that only 400 Pokemon, about half of all the creatures, have come along for the ride. Like I said, this doesn’t bother me nearly as much as it bothers some very angry people. I would rather the developers focus on other parts of the game than carrying over nearly a thousand redundant monsters. Just make new ones! But I’m not so heartless that I don’t feel some pain about the friends we lost along the way.
Pour one out for these Pokemon missing in Sword and Shield… if you aren’t a hacker.
Bulbasaur
Bulbasaur was my original partner Pokemon in the first games. Cutting it basically means cutting my heart.
Lickitung
Considering Pokemon Let Go already created HD models of all original 151 Pokemon, it’s wild to me that any of them got cut. But missing this big tongue boi really stings.
Smugleaf
This Pokemon is actually named Snivy, but Smugleaf is just too accurate. Maybe it was its bad attitude that spelled its doom.
Mewtwo
Not just the first great Pokemon villain, but perhaps the only Pokemon with any real compelling pathos. Mewtwo deserves to just chill on its clone island.
Meltan
Meltan is a brand new Pokemon who debuted in Let’s Go. We thought for sure this was a tease for its full appearance the next generation. But nope!
Greninja
Wild how a Pokemon can make the cut for Super Smash Bros. but not a Pokemon game. We stan a dark frog ninja.
Decidueye
This ghost owl sniper is one of the cooler grass evolutions in years, and at least it got its due in the Switch version of Pokken Tournament.
Mudkip
Nintendo heard you like Mudkip, so they got rid of them.
 But nope, that’s what they really call it.
Loudred
In Detective Pikachu there’s a scene where Loudred hang out with Diplo in an underground Pokemon fighting ring. Put it in the game!
Ho-Oh
In the very first episode of the Pokemon anime, the legendary Ho-Oh appeared, teasing second-generation Pokemon before the first even started and showing us just how wonderful and mysterious this world can be.
Arceus
Arceus is literally Pokemon God. We understand that it’s just too powerful for humble Pokemon England.
Psyduck
This psychic duck with chronic headaches seems like a low-tier Pokemon mascot at this point. I personally know lots of people concerned about its absence.
Cubone
Considering dead mothers are the origins of all Cubone, this Pokemon is already accustomed to loss.
Jigglypuff
Jigglypuff is probably more offended about being cut than we could ever be. It’s going to sing the developers to sleep and draw on their faces with a marker.
Corsola
Pokemon Sword and Shield’s bravest act of political commentary has nothing to do with Brexit. Instead, the game ditches the original happy pink version of Corsola for a sad colorless version that involves into ghost-type Cursola. This reflects how climate change is killing coral in oceans around the globe.


This
keyword1
is not the same as
keyword1
and certainly not the same as
keyword2
but more similar to
keyword1
.


MF0 Machine Learning Core Module
Software and hardware overview
MF0 face recognition module appearance at a glance
| MF0 | ||
|---|---|---|
| Description | Front view | Back view |
| MF0 | Pin Map | |
| MF0 Dock |
Module features:
- CPU: RISC-V 64bit dual-core processor, 400Mhz standard frequency (overclockable)
- Image recognition: QVGA@60FPS/VGA@30FPS
- Deep learning framework: TensorFlow/Keras/Darknet
- Peripherals: FPIOA, UART, GPIO, SPI, I²C, I²S, WDT, TIMER, etc
- 2.54mm pitch DIP/SMT pad
- Can be connected to a breadboard
- Onboard camera connector
- ROM: 4MByte
- RAM: 6MByte (General purpose) + 2MByte (KPU dedicated)
Hardware pin
| No. | Description |
|---|---|
| 24 | User IO24 |
| 25 | User IO25 |
| 26 | User IO26, MF0_Dock(LCD_RST) |
| 27 | User IO27, MF0_Dock(LCD_CLK) |
| 28 | User IO28, MF0_Dock(LCD_DC) |
| 29 | User IO29, MF0_Dock(LCD_SDA) |
| --- | --- |
| BOOT | Power-on boot mode selection (user IO16, not recommended for users) |
| IO5 | User IO5 (ISP_TX) |
| IO4 | User IO4 (ISP_RX) |
| EN | MF0 power enable pin, default high level enable |
| RST | K210 reset pin |
| VIN | External power supply 3.4-5.9V (5.0V recommended) |
| GND | External power supply ground |
| 3V3 | Module power supply 3.3V output |
Agreement
Serial port protocol:
MFO burns HEX protocol firmware by default
MF0 has two protocol firmware, which is convenient for users to use according to specific needs
-HEX format serial protocol firmware
-JSON format serial protocol firmware
HEX example
Serial Protocol Assistant
Update MF0 firmware
MF0 hardware connection:
| No. | USB to serial port module | MF0 IO | Remarks |
|---|---|---|---|
| 1 | 5V | VIN | --- |
| 2 | GND | GND | --- |
| 3 | TX | IO4 | --- |
| 4 | RX | IO5 | --- |
| 5 | DTR | BOOT | --- |
| 6 | RTS | RST | --- |
MF0 Dock hardware connection:
After connecting according to the following table, when downloading using kflash_gui, you need to press the boot and rst buttons, and release the rst and then the boot button to ensure that the K210 enters the download mode (ISP mode)
| No. | USB to serial port module | MF0 Dock IO | Remarks |
|---|---|---|---|
| 1 | 5V | VIN | --- |
| 2 | GND | GND | --- |
| 3 | TX | IO4 | --- |
| 4 | RX | IO5 | --- |
Then use kflash_gui to download the MF0 firmware


Preconfigured Energy Balance Models¶
In this document the basic use of climlab’s preconfigured EBM class is shown.
Contents are how to
- setup an EBM model
- show and access subprocesses
- integrate the model
- access and plot various model variables
- calculate the global mean of the temperature
In [1]:
# import header
%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
import climlab
from climlab import constants as const
from climlab.domain.field import global_mean
Model Creation¶
The regular path for the EBM class is climlab.model.ebm.EBM
but it
can also be accessed through climlab.EBM
An EBM model instance is created through
In [2]:
# model creation
ebm_model = climlab.EBM()
By default many parameters are set during initialization:
num_lat=90, S0=const.S0, A=210., B=2., D=0.55, water_depth=10., Tf=-10, a0=0.3, a2=0.078, ai=0.62, timestep=const.seconds_per_year/90., T0=12., T2=-40
For further details see the climlab documentation.
Many of the input parameters are stored in the following dictionary:
In [3]:
# print model parameters
ebm_model.param
Out[3]:
{'A': 210.0,
'B': 2.0,
'D': 0.555,
'S0': 1365.2,
'Tf': -10.0,
'a0': 0.3,
'a2': 0.078,
'ai': 0.62,
'timestep':<PHONE_NUMBER>0000005,
'water_depth': 10.0}
The model consists of one state variable (surface temperature) and a couple of defined subprocesses.
In [4]:
# print model states and suprocesses
print ebm_model
climlab Process of type <class 'climlab.model.ebm.EBM'>.
State variables and domain shapes:
Ts: (90, 1)
The subprocess tree:
top: <class 'climlab.model.ebm.EBM'>
diffusion: <class 'climlab.dynamics.diffusion.MeridionalDiffusion'>
LW: <class 'climlab.radiation.AplusBT.AplusBT'>
albedo: <class 'climlab.surface.albedo.StepFunctionAlbedo'>
iceline: <class 'climlab.surface.albedo.Iceline'>
cold_albedo: <class 'climlab.surface.albedo.ConstantAlbedo'>
warm_albedo: <class 'climlab.surface.albedo.P2Albedo'>
insolation: <class 'climlab.radiation.insolation.P2Insolation'>
Model subprocesses¶
The subprocesses are stored in a dictionary and can be accessed through
In [5]:
# access model subprocesses
ebm_model.subprocess.keys()
Out[5]:
['diffusion', 'LW', 'albedo', 'insolation']
So to access the time type of the Longwave Radiation subprocess for example, type:
In [6]:
# access specific subprocess through dictionary
ebm_model.subprocess['LW'].time_type
Out[6]:
'explicit'
Model integration¶
The model time dictionary shows information about all the time related content and quantities.
In [7]:
# accessing the model time dictionary
ebm_model.time
Out[7]:
{'day_of_year_index': 0,
'days_elapsed': 0,
'days_of_year': array([ 0. , 4.05824667, 8.11649333, 12.17474 ,
16.23298667, 20.29123333, 24.34948 , 28.40772667,
32.46597333, 36.52422 , 40.58246667, 44.64071333,
48.69896 , 52.75720667, 56.81545333, 60.8737 ,
64.93194667, 68.99019333, 73.04844 , 77.10668667,
81.16493333, 85.22318 , 89.28142667, 93.33967333,
97.39792 ,<PHONE_NUMBER>7,<PHONE_NUMBER>3, 109.57266 ,
113.63090667,<PHONE_NUMBER>3, 121.7474 ,<PHONE_NUMBER>7,
129.86389333, 133.92214 ,<PHONE_NUMBER>7,<PHONE_NUMBER>3,
146.09688 ,<PHONE_NUMBER>7,<PHONE_NUMBER>3, 158.27162 ,
162.32986667,<PHONE_NUMBER>3, 170.44636 ,<PHONE_NUMBER>7,
178.56285333, 182.6211 ,<PHONE_NUMBER>7,<PHONE_NUMBER>3,
194.79584 ,<PHONE_NUMBER>7,<PHONE_NUMBER>3, 206.97058 ,
211.02882667,<PHONE_NUMBER>3, 219.14532 ,<PHONE_NUMBER>7,
227.26181333, 231.32006 ,<PHONE_NUMBER>7,<PHONE_NUMBER>3,
243.4948 ,<PHONE_NUMBER>7,<PHONE_NUMBER>3, 255.66954 ,
259.72778667,<PHONE_NUMBER>3, 267.84428 ,<PHONE_NUMBER>7,
275.96077333, 280.01902 ,<PHONE_NUMBER>7,<PHONE_NUMBER>3,
292.19376 ,<PHONE_NUMBER>7,<PHONE_NUMBER>3, 304.3685 ,
308.42674667,<PHONE_NUMBER>3, 316.54324 ,<PHONE_NUMBER>7,
324.65973333, 328.71798 ,<PHONE_NUMBER>7,<PHONE_NUMBER>3,
340.89272 ,<PHONE_NUMBER>7,<PHONE_NUMBER>3, 353.06746 ,
357.12570667,<PHONE_NUMBER>3]),
'num_steps_per_year': 90.0,
'steps': 0,
'timestep':<PHONE_NUMBER>0000005,
'years_elapsed': 0}
To integrate the model forward in time different methods are availible:
In [8]:
# integrate model for a single timestep
ebm_model.step_forward()
The model time step has increased from 0 to 1:
In [9]:
ebm_model.time['steps']
Out[9]:
1
In [10]:
# integrate model for a 50 days
ebm_model.integrate_days(50.)
Integrating for 12 steps, 50.0 days, or 0.136895462792 years.
Total elapsed time is 0.144444444444 years.
In [11]:
# integrate model for two years
ebm_model.integrate_years(1.)
Integrating for 90 steps, 365.2422 days, or 1.0 years.
Total elapsed time is 1.14444444444 years.
In [12]:
# integrate model until solution converges
ebm_model.integrate_converge()
Total elapsed time is 9.14444444444 years.
Plotting model variables¶
A couple of interesting model variables are stored in a dictionary named
diagnostics
. It has following entries:
In [13]:
ebm_model.diagnostics.keys()
Out[13]:
['ASR', 'OLR', 'icelat', 'net_radiation', 'albedo', 'insolation']
They can be accessed respecively to the keys through
ebm_model.diagnostics['ASR']
. Most of them can be also accessed
directly as model attributes like:
In [14]:
ebm_model.icelat
Out[14]:
array([-70., 70.])
The following code does the plotting for some model variables.
In [15]:
# creating plot figure
fig = plt.figure(figsize=(15,10))
# Temperature plot
ax1 = fig.add_subplot(221)
ax1.plot(ebm_model.lat,ebm_model.Ts)
ax1.set_xticks([-90,-60,-30,0,30,60,90])
ax1.set_xlim([-90,90])
ax1.set_title('Surface Temperature', fontsize=14)
ax1.set_ylabel('(degC)', fontsize=12)
ax1.grid()
# Albedo plot
ax2 = fig.add_subplot(223, sharex = ax1)
ax2.plot(ebm_model.lat,ebm_model.albedo)
ax2.set_title('Albedo', fontsize=14)
ax2.set_xlabel('latitude', fontsize=10)
ax2.set_ylim([0,1])
ax2.grid()
# Net Radiation plot
ax3 = fig.add_subplot(222, sharex = ax1)
ax3.plot(ebm_model.lat, ebm_model.OLR, label='OLR',
color='cyan')
ax3.plot(ebm_model.lat, ebm_model.ASR, label='ASR',
color='magenta')
ax3.plot(ebm_model.lat, ebm_model.ASR-ebm_model.OLR,
label='net radiation',
color='red')
ax3.set_title('Net Radiation', fontsize=14)
ax3.set_ylabel('(W/m$^2$)', fontsize=12)
ax3.legend(loc='best')
ax3.grid()
# Energy Balance plot
net_rad = np.squeeze(ebm_model.net_radiation)
transport = ebm_model.heat_transport_convergence()
ax4 = fig.add_subplot(224, sharex = ax1)
ax4.plot(ebm_model.lat, net_rad, label='net radiation',
color='red')
ax4.plot(ebm_model.lat, transport, label='heat transport',
color='blue')
ax4.plot(ebm_model.lat, net_rad+transport, label='balance',
color='black')
ax4.set_title('Energy', fontsize=14)
ax4.set_xlabel('latitude', fontsize=10)
ax4.set_ylabel('(W/m$^2$)', fontsize=12)
ax4.legend(loc='best')
ax4.grid()
plt.show()
The energy balance is zero at every latitude. That means the model is in equilibrium. Perfect!
Global mean temperature¶
The model’s state dictionary has following entries:
In [16]:
ebm_model.state.keys()
Out[16]:
['Ts']
So the surface temperature can usually be accessed through
ebm_model.state['Ts']
but is also availible as a model attribute:
ebm_model.Ts
The global mean of the model’s surface temperature can be calculated through
In [17]:
# calculate global mean temperature
global_mean(ebm_model.Ts)
Out[17]:
Field(14.288135944994657)
Note that in the header the global_mean
method has been
imported!
In [18]:
print 'The global mean temperature is %s degC.' \
%np.round(global_mean(ebm_model.Ts),2)
print 'The modeled ice edge is at %s deg.' % np.max(ebm_model.icelat)
The global mean temperature is 14.29 degC.
The modeled ice edge is at 70.0 deg.


Galion:
How is my old friend Trader Woodrow? I feel I know him well although we have only spoken by letter...


Returns a floating point number rounded to a specified number of decimal places.
round (number[, decimalplaces])
float
#TODO
The behavior of round() for floats can be surprising: for example, round(2.675, 2) gives 2.67 instead of the expected 2.68. This is not a bug: it’s a result of the fact that most decimal fractions can’t be represented exactly as a float.
See Floating Point Arithmetic: Issues and Limitations for more information.
See also: Decimal module.
Values are rounded to the closest multiple of 10 to the power minus decimalplaces; if two multiples are equally close, rounding is done away from 0 (so. for example, round(0.5) is 1.0 and round(-0.5) is -1.0).
>>> round(3.333, 1)
3.3
>>> round(2.675, 2)
2.67 #this is not correct in proper arithmetic
>>> round(0, 1)
0.0
#TODO


Issue: SUBTYPEP-ENVIRONMENTReferences: DEFTYPE,
Related issues: Issue COMPILE-FILE-HANDLING-OF-TOP-LEVEL-FORMS
Issue CLOS-MACRO-COMPILATION
Issue DEFTYPE-DESTRUCTURING
Issue CONSTANTP-ENVIRONMENT
Category: CHANGE, ADDITION
Edit history: V1, 02 Jan 1989, ???
V2, 12 Feb 1991, Sandra Loosemore
Problem description:
Defining macros including DEFTYPE, DEFSTRUCT, DEFCLASS, and
DEFINE-CONDITION are permitted to note type definitions at
compile-time in such a way that those definitions are visible only to
the file compiler and not to the evaluator. This can lead to
incorrect behavior in user code that deals with the type system, for
example in macro expansion functions. Such code needs to explicitly
indicate in some way whether it wishes to deal with the type system as
seen by the file compiler (the "remote environment"), or in the
current environment.
Proposal (SUBTYPEP-ENVIRONMENT:ADD-ARG):
Add an optional environment argument to TYPEP, SUBTYPEP,
UPGRADED-ARRAY-ELEMENT-TYPE, and UPGRADED-COMPLEX-PART-TYPE. If the
argument is NIL or not supplied, it defaults to the null lexical
environment and current global environment.
Clarify that &ENVIRONMENT may appear in the lambda-list of a DEFTYPE
form, as with DEFMACRO.
Examples:
???
Rationale:
This is consistent with the mechanism used elsewhere to specify what
environment name/definition lookups should be performed in.
Current Practice:
Chestnut's Lisp-to-C translator supports this mechanism.
Cost to Implementors:
Minor. Implementations that don't support the notion of "remote
environments" can ignore the environment arguments.
Cost to Users:
Minor. Users may have to be more careful about passing environment
arguments around.
Cost of non-adoption:
Programs that try to manipulate type information at compile-time will
break in some implementations.
Performance impact:
Minor.
Benefits:
The cost of non-adoption is avoided.
Esthetics:
Looks OK to me.
Discussion:
Version 1 of this issue was lost. Version 2 is a completely new
writeup.
Loosemore and Barrett support this proposal.
There may be confusion about why TYPE-OF does not need an
environment argument. Recall that compile-time type definitions made
by DEFSTRUCT, DEFCLASS, and DEFINE-CONDITION are permitted to be
partial or incomplete. Essentially, the only information that is
required at compile-time is that a name/type mapping exists and the
subtype/supertype relationships between all of the type specifiers.
On the other hand, the type must be fully defined before instances can
be created. If no instances can be created, then TYPE-OF has no need
to know about the type. TYPE-OF also has no need to know about type
specifiers defined with DEFTYPE.
-------