WITNESS LIST State Affairs Committee April 6, 1999-2:00P HB 140 For: Blackwood, Susan (Self) DeMontrond III, George A. (City of Houston; Houston 2012 Foundation) Krier, Cyndi Taylor (Bexar County; Sports Fiesta San Antonio Bid Committee) HB 1083 For: Pinkus, David (Small Business United of Texas) Triplett, Jan (Self) On: Anderson, Israel P. (TNRCC) HB 1343 For: Bledsoe, Gary L. (Self and Texas NAACP) Box, Karen (Capital City African American Chamber of Commerce) HB 1471 For: Triplett, Jan (Self) HB 1567 For: Bledsoe, Gary L. (Self and Texas NAACP) Box, Karen (Capital City African American Chamber of Commerce) HB 2430 For: Bledsoe, Gary L. (Self and Texas NAACP) Box, Karen (Capital City African American Chamber of Commerce) HB 2646 For: Rubin, Michael S. (Apple Computer, Inc) Wise, Andrew (American Electronics Association) HB 2649 Against: Kunz, Richard L (Lexmark International, Inc) Lang, Betsy (Lexmark International) On: Schlimpir, Paul (General Services Commission) HB 2649 Committee Substitute (McCall, Brian) For: Gordon, Ronald A. (Self) Hill, Jeff (Self) Judge, Patricia (Recharger Magazine) Nobles, Warren (Self) Sylvester, James V. (Self and Texas Assn of Cartridge Remanufacturers) Wendt, Michael (Self and Texas Association of Cartridge Remanufacturers) HB 2661 For: Smith, Tom Smitty (Public Citizens Member) HB 3032 For: Batson, Rose (Women's Chamber of Commerce of Texas) Bledsoe, Gary L. (Self and Texas NAACP) Box, Karen (Capital City African American Chamber of Commerce) Castaneda, Jr, Tristan "Tris" (The Greater San Antonio Chamber of Commerce) Dovie, Anthony (Self and SAIC) Givens, Vera L. (Self and Women's Chamber of Commerce of Texas) Huebner, Richard (Self and Houston Minority Business Council) Jackson, Isaac (Texas Association of African Amercian Chamber of Commerce) Lanier, Odysseus M. (Self) Martinez, Nash (Self and Canales Martinez & Nash) Navales, Gloria (San Antonio Hispanic Chamber of Commerce) Seaman, Aaron (San Antonio Hispanic Chamber of Commerce) Stevens, Marilou Martinez (Texas Association of Mexican American Chamber of Commerce) Trevino, Deborah (Self and San Antonio Hispanic Chamber of Commerce) Triplett, Jan (Self) Unnam, Jalaiah (Self and AS&M, Inc) Wilfong Jr, Henry T. (National Assn of SDBs) HB 3135 For: Blackwood, Susan (Self) Krier, Cyndi Taylor (Bexar County; Sports Fiesta San Antonio Bid Committee) Menendez, Jose (Self and City of San Antonio) Reyna, Raul A. (2007 Sports Fiesta San Antonio Bid Committee) Romero, Jesse (Self and Congressman Ciro D.Rodriguez) Wolff, Nelson (Greater San Antonio Chamber of Commerce) On: LeBas, James (Comptroller's Office) HB 3153 On: Collins, Steve (Texas Legislative Council) HB 3186 For: Pinkus, David (Small Business United of Tx) Romero, Jesse (Self) Seaman, Aaron (San Antonio Hispanic Chamber of Commerce) On: Aaron, Sheri (Self and Bonding & Technical Services, Inc) HB 3597 Against: Kunz, Richard L (Lexmark International, Inc) HB 3702 For: Cardle, Jim (Self) Stubbs, C.A. (Self and Citizens Against Gov. Waste) Triplett, Jan (Self)


{% trans "Confirm E-mail Address" %}
{% if confirmation %} {% user_display confirmation.email_address.user as user_display %}{% blocktrans with confirmation.email_address.email as email %}Please confirm that {{ email }} is an e-mail address for user {{ user_display }}.{% endblocktrans %}
{% else %} {% url 'account_email' as email_url %}{% blocktrans %}This e-mail confirmation link expired or is invalid. Please issue a new e-mail confirmation request.{% endblocktrans %}
{% endif %}


Game Trees and Memoization
A game tree is a type of recursive search function that traces all possible moves of a strategy game, and the result of each in an attempt to find an optimal move. Game trees are a type of Artificial Intelligence, and are primarily useful in scenarios that do not require real-time decision-making or have a relatively low number of possible choices per play.
Memoization is often used to speed up recursion by storing the results of function or method call based on the given inputs rather than simply computing the result over again. Then the function just returns the stored result rather than computing the result again. One can think of it as a cache for function or method results.
Objectives
- Trace recursive calls in a game tree.
- See what difference memoization makes to the number of branches that are explored.
- Convert a game written in C++ into Python.
The Pick-up Stones Game
Note: This assignment may NOT be completed with a partner--you must
complete it by yourself.
The rules of the Pick-up Stones Game are as Follows:
- There are a set number of stones in a pile: START_STONES
- Players alternate taking at least 1 stone and at most MAX_TAKE stones each turn.
- The player who take the last set of stones wins.
The obvious strategy is to try to leave your opponent with no stones.
Please clone the repo: a17-game-tree In this repo you will find:
stonesmemo.cpp
- csc236-reflection-a17.docx
Open both files. The csc236-reflection-a17.docx file is a reflection document which will guide your understanding of the following game tree. You will also be converting the
stonesmemo.cpp
C++ program to Python.To Submit
Note: This assignment may NOT be completed with a partner--you must complete it by yourself.- Your completed Python program file stonesmemo.py in addition to the files you started with.
- Include the completed yourusername-A17.docx reflection document.
- Submit the link to your repo into Moodle.


ivacation
Home
Places to stay
Offers
Contact
About me
Login
Login and Sign Up
Login
Remember me
Sign Up


For this post, I’m going to go over getting a simple CI environment setup using Travis CI and xUnit.
If you’re one of those people that just wants to see the code, click here!
Our goal is to have the following scenario: whenever a push happens (to any branch) on GitHub, a build of the app will be triggered by Travis CI. If the build succeeds, it will run all of the unit tests for your app. If those all pass, the build is successful, otherwise it is considered a failed build. The build process will make use of NuGet to restore all packages prior to build.
I’m going to assume we’re starting with a brand new GitHub repo. In my case, I created a new repo with C# as the chosen language and MIT for the license. After cloning, I have the following directory structure:
<path/to/app>/
.gitignore
LICENSE
README.md
Because the goal here is to illustrate the process rather than the app, We’re going to make a really simple app. I would strongly suggest setting up CI as early on as possible on your projects as well. That way, when build issues arise you can solve them one at a time (way easier).
Let’s create the application. In Visual Studio…
Blank Solution
called src
and save it in the root of your GitHub repoCI Demo
CI.Demo
and CI.Demo.Tests
- make sure to use .NET 4.0 (not 4.5)We need to use .NET 4 for all projects in the solution. This is due to mono’s lack of support for .NET 4.5.
You should now have the following structure:
<path/to/app>/
...
...
src/
CI.Demo/
CI.Demo.Tests/
CI Demo.sln
CI.Demo
projectNow add a new class called Feature.cs
with the following code:
Now that we’ve got a few tests, let’s make it work. Add the Feature.cs
class with the following implementation:
The last step here is to enable NuGet package restore. Right-click on the solution and select “Enable NuGet Package
Restore.” This will create the src/.nuget
folder and add a few files to it.
At this point, the solution should compile and the tests should pass. This would be a good time to commit. Be sure that the .nuget folder is committed to git
In order to run xUnit tests from the Travis CI server, we will need to supply it with the path to the console runner.
For this we need to download xunit from http://xunit.codeplex.com/ and copy the following files into
<path/to/app>/lib/xunit/
You should now have the following directory structure:
<path/to/app>/
...
src/
...
...
lib/
xunit/
...files we just added
Because we’re using mono (Travis uses mono), we need to add a DLL to the .nuget folder in order for the msbuild task to
complete successfully. We also need to handle a weird formatting issue with NuGet.targets. This work will be done in
/path/to/app/src/.nuget/
.
Let’s start by downloading the
Microsoft.Build.dll
assembly and adding it to the /path/to/app/src/.nuget/
directory.
Now we need to make a mono-specific version of the NuGet.targets file. Make a copy of NuGet.targets and save it as
NuGet.mono.targets. We need to modiy the RestoreCommand
value by removing the literal space in the -solutionDir
parameter.
Original: -solutionDir "$(SolutionDir) "
Updated: -solutionDir "$(SolutionDir)"
I know…this is silly right? Unfortunately the space is required on Windows (at least with my set up), but it can’t be there for ‘nix systems. In the future, I intend to have the Travis script modify the existing file so we don’t need two…but this is simpler for now.
We need Travis to do the following whenever a build is triggered:
A lot right? It turns out this is pretty straight forward. Create a new file called .travis.yml
(notice the leading
dot) in /path/to/app/
.
Add the following to it:
Now we commit our changes and push to GitHub
git add .
git commit -am "setting up for travis integration"
git push
At this point, all we need to do it tell Travis CI about our repo. Super simple…
Now that it’s all setup, we’re going to add the build status to the README.md file and push to GitHub. This will trigger the build.
Add the following to your README.md file (replace pseudomuto/travis-ci-demo with your GitHub repo)
I’ve put the complete source code for this on GitHub for reference. Feel free to fork and make changes…


We redefine tables!
- target 24/365 channels
- synthesize web-enabled synergies
- integrate out-of-the-box metrics
- syndicate bricks-and-clicks deliverables
- expedite synergistic bandwidth
- optimize holistic models
- facilitate efficient paradigms
- morph open-source web services
- extend innovative synergies
- synergize one-to-one deliverables
- reintermediate scalable e-services
- empower best-of-breed relationships
- redefine holistic methodologies
- exploit cross-platform markets
- morph viral technologies


8.1.6.a mediatype attribute for upload element (non-normative)
When you activate the Upload Image upload control your choice of files may be limited to those
that are the same media type as the ones in the mediatype attribute. The mediatype attribute
contains the value "image/jpeg image/png".
Upload Image


Is form valid?: {{f.valid | json}}
Is form submitted?: {{f.submitted | json}}
form value: {{f.value | json}}


How to Improve your Photography Skills!
Assembly time: 60 Minutes
Effectiveness rating: 95% Effective
It can be tough to get the best shot possible but with small techniques and adjustments, you can get great nature pictures both motion and regular portraits.
-
Know your device and or camera well.
Once you have learned how your device and or camera works and the general setting of it. Then survey your background and try and get a good sense of what is around you. It is important to feel comfortable in different environments to be able to get the best shot.
-
Techniques before going outside.
There are rules to follow when taking moving and or nature pictures. The most helpful beginner tools are 1. Try diving your portrait into nine sections, this creates symmetry where you can get much more into a picture as it is aligned and straight. 2. Make sure you have leading lines. 3. The more depth to the picture the better, it draws the audience’s attention, depth includes different textures, colors, and angles.
-
Different types of Nature shots: Action Pictures.
To guarantee you will get the best shot, put your phone in burst mode and or camera in shutter mode. While taking action shots in nature it is crucial to get shots in motion. The higher the shutter speed the better. This will make it so the motion picture seem preserved.
-
Different types of Nature shots: Sunrise and Sunset Photography.
Both sunrise and sunset pictures require different techniques that creates pictures that bring out the true colors of the portrait. For sunrise pictures a higher ISO to compensate for the darkness as the sun rises. Vice versa when taking a sunset shot, you adjust your ISO to the setting and or as the sun goes down.


Dear {{ user }},
Thank you for using {{ business }}'s services.
Attach is a copy of your invoice. Please make sure to send your payment by the due date.
Thank you
Respectfully,
{{ owner }}
{{ add1 }}{{ add2 }}
{{ locality }}
Phone: {{ phone }}


All +
All -
Malware Analysis
- + -
Trivial Analysis
- + -
Live Analysis
- Regmon
- Filemon
- TCPView
- InCtrl
- SysAnalyzer
- Etc...
- + -
Unpacking
- + -
Dumping
- + -
OllyDump
- Execute the target process in OllyDbg
- Either single step to the control transfer or simply let the application run
- Select OllyDump from the plugins menu
- Select dump
- Optionally select one of two IAT rebuilding methods
- Look into rebuilding the IAT if you did not select a rebuild method
- + -
ProcDump
- Launch the target process on it's own
- Have ProcDump create a dump
- Look into rebuilding the IAT
- Etc.
- + -
IAT Fixing / Symbol Creation
- + -
OllyDump
- Execute the target process in OllyDbg
- Either single step to the control transfer or simply let the application run
- Select OllyDump from the plugins menu
- Select dump
- Select one of two IAT rebuild methods
- Load dump in IDA
- + -
ImportRec
- Create a dump file
- Launch the process on it's own and let it run
- Launch ImportRec
- Select the target process
- Press "IAT Autoscan"
- If nothing was found, increase the size and search again
- Manually remove garbage thunks
- Press "fix dump"
- Select the target dump
- Load in IDA to verify results
- + -
IDCDumpFix
- Create a dump file
- Start target application in OllyDbg
- Press F9 to let it run
- Press Alt+M and locate the code page
- Follow in disassembler
- Alt+A to analyze
- Right click and select Search -> all intermodular calls
- Copy paste the entire table to IDCDumpFix
- Convert to IDC
- Run in IDA over dumped file
- You won't get an IAT using this technique, but you will get usable symbols
- (watch for an increase in the "names" list)
- + -
Emulation
- Load target in IDA
- Launch IDA-x86-emu plug-in
- Click "push data"
- Enter "0 0 0 0 0 0 0 ...." to create some stack space
- Copy the value of ESP to EBP
- You are now ready to start using the plug-in
- + -
Reverse Engineering
- Identify if malware is a variant
- Call graph + naming analysis
- Quickly scan through binary naming obvious functions
- Utilize the keyboard shortcuts to speed the process
- The custom tagging routines we created are helpful
- String decoding if necessary
- Back trace interesting string and API cross references
- + -
Look for answers to specific questions
- + -
How is it spreading?
- + -
If over IP how fast?
- connect()
- send()
- sendto()
- CreateThread()
- Sleep()
- + -
Is the prand() biased?
- GetTickCount()
- rand() ;-)
- + -
Does it contain a mass mailer?
- + -
harvesting e-mails
- FindFirstFile()
- FindNextFile()
- MapViewOfFile()
- CreateFile()
- CreateFileMapping()
- + -
SMTP engine
- + -
SMTP discovery
- RegQueryValue(Software\Microsoft\Internet Account Manager\Accounts\SMTP Server)
- + -
Does it spread over network shares?
- WNetOpenEnum()
- WNetEnumResource()
-
- + -
Does it spread over P2P?
- + -
kazaa
- RegQueryValue(Software\\Kazaa\\Transfer)
- + -
Does it spread over an exploit?
- connect()
- send()
- sendto()
- + -
Does it contain a backdoor?
- Does it connect to an IRC server?
- + -
Does it bind to any ports?
- + -
What modifications are made?
- + -
Does it touch any registery keys?
- RegOpenKey()
- RegCreateKey()
- RegSetValue()
- Does it touch any files?
- + -
Does it touch any processes?
- OpenProcess()
- WriteProcessMemory()
- CreateRemoteThread()
- Does it touch itself? (hehe)
- + -
Are there any special dates?
- + -
Is there an expiration date?
- GetSystemTimeAsFileTime()
- SystemTimeToFileTime()
- FileTimeToLocalFileTime()
- Is there a destruction date?
- + -
Emulation
- Load target in IDA
- Launch IDA-x86-emu plug-in
- Click "push data"
- Enter "0 0 0 0 0 0 0 ...." to create some stack space
- Copy the value of ESP to EBP
- You are now ready to start using the plug-in


Service to announce messages to supported screenreaders.
The
$mdLiveAnnouncer
service is internally used for components to provide proper accessibility.
$mdLiveAnnouncer.announce(message, politeness);
Announces messages to supported screenreaders.
| Parameter | Type | Description |
|---|---|---|
* message
string
|
string |
Message to be announced to the screenreader |
* politeness
'off' 'polite' 'assertive'
|
'off' 'polite' 'assertive' |
The politeness of the announcer element. |


|
MICA2 Radio Stack for TinyOS
Last updated 03 Sep 2003 |
| Overview |
The MICA2 series of sensor motes use the ChipCon model CC1000 single-chip RF transceiver. Features of this radio include:
* Note: While the operating freq. is software selectable, external hardware attached to the CC1000 is set to operate in one frequency band. That is, a board set to operate in 433 MHz band will not operate at the 868/915 MHz bands. How do I tell what my operating range is?
This document describes the principles and operations of the software components used to drive the CC1000 for TinyOS.
| Description |
Figure 1 illustrates the overall component and configuration architecture for the CC1000 Stack.
Figure 1: The CC1000 Radio Stack Architecture
There are two core components to the stack:
CC1000RadioIntM: The data path module for the CC1000.This
module provides transmit and receive data movement using CSMA/CA based
contention avoidance schemes. In the receive mode, the module accepts bytes
of data from the radio via the SPI interface and performs the necessary
preamble detection, synchronization and CRC calculation/checks. When a
packet has been received, it posts a task which signals a receive event.
NOTE: While the stack computes and checks the CRC, it does not drop the packet
based on a bad CRC. Rather it sets the crc field of the TOS_Msg struct to be '1' if the
CRC is valid.
To transmit, the
stack checks to see if the channel is clear by searching for a preamble AND
monitoring received signal strength (via the ADC). When the channel is clear, it
toggles the radio and pushes out the preamble, sync and payload bytes. The stack also implements low
power listening modes and uses the Timer components to trigger RX and TX
periods.
CC1000ControlM: The control path module for CC1000 operation. This module provides all of the management functions of the radio including tuning, toggling between TX/RX operation, selecting power states, and reading special I/O pins. It provides these features via the CC1000Control interface. While most of the functionality of this stack is used by the data path, it is also exported outside the radio stack for applications that may need to take direct control of the stack. CC1000Const.h is a supplemental header file for the control module that contains special register definitions and the frequency parameters table. This file is further explained in the Usage section.
Both these modules and the necessary supporting modules are tied together in a single configuration component: CC1000ControlC. The configuration exports the RecieveMsg, BareSendMsg and StdControl interfaces. It also exports the CC1000Control interface for applications that wish additional control/monitoring of the radio.
The MICA2 CC1000 radio implementation differs from the MICA TR1000 stack in the following ways:
| Usage |
As is, the modules default to the following operational state after being issued StdControl.init() and StdControl.start():
The CC1000 uses a digital frequency synthesizer to select a particular send/receive channel. Specific control registers are programmed with values according to the channel and FSK separation used. Because of the nature of the synthesizer, it is only capable of reproducing discrete frequencies in the operating range of the device. The manufacturer provides tools to determine these optimal frequencies and their associated control values, but they are unintuitive and cumbersome to use.
The TinyOS stack and related tools take the guesswork out of tuning the CC1000 for the MICA2 series motes. The stack will automatically compute the nearest channel for a given frequency and program the necessary register values (manual tuning), or use pre-determined values from a preset table (preset tuning). In addition, the channelgen tool provides a means to verify the actual channel used by the radio and simplify the generation of new presets.
Important Points on tuning the CC1000:
Manual Tuning (PREFERRED METHOD)
Runtime: CC1000Control.TuneManual(uint32_t DesiredFreq) (DesiredFreq is in Hz) Compile time: -DCC1K_DEF_FREQ=<DesiredFreq> This method is the preferred method of tuning the mica2 radio. The control path function CC1000Control.TuneManual() takes a desired frequency in Hz, computes the optimal achievable frequency, determines the necessary control register values, programs the CC1000 and calibrates the device. It returns the frequency, in Hz, of the actual channel. Defining the compiler flag CC1K_DEF_FREQ=x sets the default frequency for the device when compiling the application. For example, the command:
bash% CFLAGS=-DCC1K_DEF_FREQ=916400000 make mica2
will build your application using a default frequency around 916.400 MHz. You can alternatively put the compiler flag as a part of your custom build environment.
Using manual tuning does not affect the modem control registers (default data rate is 38.4 Kbaud/19.2 Kbps).
Preset Tuning
Runtime: CC1000Control.TunePreset(uint8_t Index) (Index is the preset index value) Compile time: -DCC1K_DEF_PRESET=<Index> The CC1K_Params[] table in CC1000Const.h defines specific operating parameters for a given frequency/datarate combination. The table resides in flash memory to minimize RAM footprint. The control path function CC1000Control.TunePreset() takes a given index in this table, sets the register values and calibrates the device. Defining the compiler flag CC1K_DEF_PRESET=N sets the default preset index to use when compiling the application. For example:
bash% CFLAGS=-DCC1K_DEF_PRESET=2 make mica2
will build an application using preset #2 from the preset table. You can alternatively put the compiler flags as a part of your custom build environment.
The TinyOS-1.1 distribution comes with some pre-packaged presets defined in CC1000Const.h. Use the channelgen tool to generate additional presets if desired.
NOTE: When using preset tuning, ALL of the preset parameters are programmed in the device, including the modem control registers.Using channelgen
To build the tool, change to the tools/src/CC1000 directory and type 'make' at the command prompt.
SYNOPSIS
channelgen [options] FREQUENCY
DESCRIPTION
The channelgen tool generates CC1000 channel information for the given desired FREQUENCY. The application emulates the TuneManual() component function of the radio stack and implements the same calculation engine. It can be used to determine what actual frequency the radio will use given a desired frequency and/or to generate a preset table entry. By default, channelgen provides only actual channel information.
OPTIONS
-p Print C-style preset table entry.
The CC1000Control interface provides additional functions to control various functions of the radio at runtime. Users should refer to documentation comments in the file CC1000Control.nc.
The component CC1000RadioC exports the BareSendMsg and ReceiveMsg interfaces. Their function the same as that for the original MICA stack and can be directly connected to components using these interfaces.
The data path provides a method of altering the duty cycle state of the radio to meet power constraints of the application and/or power source. CC1000RadioIntM exports individual commands to set and determine the present duty cycle mode for both the receiving and transmitting side of the data path. The functions are summarized in Table 1. The associated listening states are summarized in Table 2.
Note that BOTH the receiver and transmitter must be in the same mode to communicate.
|
Command Declaration |
Description |
| result_t SetListeningMode(uint8_t power) | Sets the receiver duty cycle mode.
|
| uint8_t GetListeningMode() | Get the current receiver duty cycle setting.
|
| result_t SetTransmitMode(uint8_t power) | Set the transmitter duty cycle mode.
|
| uint8_t GetTransmitMode() | Get the current transmitter duty cycle mode.
|
Table 1: Radio data path duty cycle control commands.
| Mode | Duty Cycle %) | Max Packet Rate (pkts/sec) | Effective Data Rate (kbps) |
| 0 | 100 | 42.93 | 12.364 |
| 1 | 35.5 | 19.69 | 5.671 |
| 2 | 11.5 | 8.64 | 2.488 |
| 3 | 7.53 | 6.03 | 1.737 |
| 4 | 5.61 | 4.64 | 1.336 |
| 5 | 2.22 | 1.94 | 0.559 |
| 6 | 1.00 | 0.89 | 0.258 |
Table 2: Duty cycle modes and their corresponding packet and data rates.
| Updates |
This page will be updated as new features/fixes are made to the radio stack.
Last updated: 11/17/2003


Just to let anybody reading this know, I really enjoyed this drug, but doubt I will ever do it again. I can see a very high potential of me making a habit of using it.
Well, the day started out bad. There were unwanted people at my house, two of my very good friends were in the middle of a large argument and some unkind words were exchanged, and I just woke up on the wrong side of the bed. I was with my friend, J, during most of this experience.
We started the day out running some errands, and went back to J's house. Neither of us had used Morphine before, and we both agreed that we did not want to inject it, so we decided to mix it with powerade and drink it. I put about 60 mg into my powerade, and just gave J the rest, and he put it in his.
We sat down to watch a movie, and in a few minutes all of my powerade was gone. It took around half an hour before I felt the effects of it, and maybe an hour before I felt the full effects.
I have never used any type of Opiate before. All I can really compare it with are marijuana and xanax. The feeling I got was the opposite of what I get from weed. Instead of feeling like I was floating, I felt like I was sinking. It reminded me of xanax, only a lot more intense. It was very calming, and I was coherent throughout the whole experience.
After about forty five minutes, J wanted something to eat, so he went to the kitchen and grabbed a few slim jims. He offered me one, and I accepted his offer. I tried to open it, but couldn't. The feeling in my hands was just too intense. Every time I would try to open it, my hands would be overwhelmed with a relaxing feeling and I would just start laughing. Eventually, I just gave up and opened it with a knife. It was then that I noticed the infection I had from getting my handweb pierced wasn't hurting, as it had been all day.
After a while, we decided to go buy something to eat, since there wasn't too much in the house. Everything seemed so slow. My body was in sync with the slowness, though. I felt as though it gave me time to fully cherish every moment, because I wasn't thinking slow, but yet, I was not having delayed reactions.
When we got back from getting food, I went to the bathroom and noticed how small my pupils were.
About two hours after we took the morphine, J's sister called him on his cell phone. He told her that we had taken the morphine. She was fairly angry, and said that she was coming over. I decided this would be a good time to leave.
When I got home, I felt like laying down and watching television, so I did. I closed my eyes, but wasn't asleep. For the next hour, I was extremely relaxed. I wasn't sleeping, but felt that I could not open my eyes for the life of me. I just layed there until I was sober. It wasn't a harsh comedown. I just eased into it, much like coming down on marijuana.
I would say that this experience helped me a lot. Before today, I was very stressed out. Now I'm not. The whole time I was on it, I felt like I could have a conversation with anybody, and I still do, even though I am sober right now. I feel as though a social boundary has been broken down for me. It's as if something that wasn't there before is there now.
I'm never going to use morphine again. I can see myself getting addicted to it.
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.


From EnsemblMetazoa:
The nematode worm Caenorhabditis elegans has been a major model organism for basic biomedical research for over 30 years. Genetic and molecular research in C.elegans has played a key role in the development of our understanding of many important processes, including cell death, microRNAs and RNA interference, development, and aging. C. elegans was the first animal whose genome was sequenced (C. elegans Sequencing Consortium, 1998), and has been an exemplar in the application of genomic data to functional biology in animals.
C. elegans is a small, free-living nematode found in decaying plant material, especially compost and mushroom beds in temperate regions throughout the world. It feeds on the bacteria and other micro-organisms associated with plant decay, and is frequently found associated with snails, slugs, millipedes, mites and pill bugs, which are presumed to transport worms from one location to another. The animal has a short generation time, developing through four larval stages into an adult. C. elegans is hermaphroditic and distinct from the majority of other characterised nematodes which have both male and female adult animals.
C. sp. 34 is the most closely related species.


https://danielgrzelak.com/disrupting-aws-logging-a42e437d6594
https://www.youtube.com/watch?v=2NF4LjjwoZw
https://www.virtuesecurity.com/aws-penetration-testing-part-1-s3-buckets/
https://www.virtuesecurity.com/aws-penetration-testing-part-2-s3-iam-ec2/
Complete
https://aws.amazon.com/security/penetration-testing/
https://www.gracefulsecurity.com/an-introduction-to-penetration-testing-aws/
https://rhinosecuritylabs.com/aws/aws-role-enumeration-iam-p2/
https://rhinosecuritylabs.com/aws/aws-privilege-escalation-methods-mitigation/
https://rhinosecuritylabs.com/penetration-testing/assume-worst-aws-assume-role-enumeration/
https://rhinosecuritylabs.com/penetration-testing/aws-iam-user-enumeration/
https://www.cyberark.com/threat-research-blog/cloud-shadow-admin-threat-10-permissions-protect/
https://www.provensec.com/penetration-testing-aws-s3-bucket/
https://pentestarmoury.com/2017/07/19/s3-buckets-for-good-and-evil/
https://rhinosecuritylabs.com/cloud-security/aws-security-vulnerabilities-perspective/


Toggle navigation
Home
Code of Conduct
Logout
Welcome
REGISTER YOUR TEAM
Ticket will be sent to Team Leader email. Please provide the details correctly
Team Name *:
Team Size *:
Enter Details
Register
Make Payment to Complete Registration


PlotKit Home | << | >>
PlotKit Sweet Canvas Renderer
This renderer is an extension of the basic Canvas Renderer to show off what you can do to make graphs pretty without learning any graph layout code.
There are no extra methods or options to use. The interface is exactly
the same as PlotKit.Canvas
's CanvasRenderer.


Ethereum’s Proof of Stake Casper Testnet Nears Launch
“One of the biggest upgrade in ethereum, and perhaps in the entire ecosystem, might be closer to implementation than previously thought”
One of the biggest upgrade in ethereum, and perhaps in the entire ecosystem, might be closer to implementation than previously thought, with Lane Rettig, a researcher at the Ethereum Foundation, stating:
“Casper FFG testnet is coming. We’ve got a three-node network working with two validators. Still a few bugs to work out. Whitepapers are cool and all but seeing this come to life is amazing.”
Casper‘s testnet in development
Casper Friendly Finality Gadget (FFG) is a hybrid Proof of Stake (PoS) and Proof of Work (PoW) implementation developed by Vitalik Buterin, ethereum’s inventor, and others.
This implementation is apparently sufficiently advanced to the extent it could even be incorporated in the next ethereum upgrade, Constantinople Metropolis. According to Ethnews, Buterin said:
“Theoretically, Casper may well be at the stage where we may actually just try doing it for the next fork, even if that sounds ambitious.”
There is no estimated date for the second Metropolis fork as far as we are aware. Initially, the intention was to have just one Metropolis upgrade, but some aspects were taking far too long, while much else had been finalized.
Developers therefore split it into Byzantium and Constantinople, with Byzantium going through just a few weeks ago. Constantinople is now expected next and might potentially incorporate Casper.
The Casper testnet is, as the name says, an environment where they can test the first version of PoS. That means the code is not finalized, but has taken form rather than being at the theoretical design stage.
The purpose of the testnet is to firstly ensure security and secondly to refine it fully as coders see how it works in a virtual lab environment. It is the last stage of any upgrade, before it goes to main-net, and indicates a live launch might be just months away.
When exactly, no one can quite say as no one really knows what the testnet might bring up, but optimistically we think around summer and perhaps more realistically around Autumn.
However, the Ethereum Foundation, which is now very rich indeed following considerable appreciation in eth’s price, has been expanding and increasing its resources, bringing in new developers.
Therefore, Casper seems to have moved faster than expected, with it now finalized in main aspects and moving to concrete detailed implementation, then testing, which is apparently to begin soon.
Once it is fully implemented, ethereum would benefit in a number of ways. Firstly, scalability is increased as confirmation times can be lowered. Secondly, eth itself becomes a dividend providing asset/currency/investment.
That’s because eth itself will be used for partial mining, to begin with, and then eventually full mining. With eth tokens themselves validating the network and thus replacing the huge hardware mining farms with just eth-locked laptop nodes.
That locked eth will provide interest, like a savings account, with holders transitioning towards paying themselves, if they please, rather than paying for miners, electricity, or hardware.
Which means ethereum will cease consuming limited physical resources to any significant extent. With the network becoming, as an added benefit, environmentally friendly. Potentially far more so than even banks or Visa.
Another major benefit which might be expected is increased decentralization. For the first time, a major decentralized public blockchain will pay individuals to run a node through the dividend/interest mentioned above.
As such, ordinary users will be incentivized to run a node as a profit motive will be added, unlike currently where most users run one altruistically.
More of them might opt to do so, which may also affect a fifth aspect, end user experience and scalability. The nature of PoS requires some level of continued inflation, which for ethereum will probably be at 2% or less annually.
As it is a fixed rate, it would be priced in and might even amount to effectively 0% because of lost eth, similar to how pennies get forgotten or are thrown away.
This may have major implications for the usability of eth’s blockchain, because transaction fees would be unnecessary as nodes would be incentivized through interest.
Ethereum’s public blockchain, therefore, unlike bitcoin, can scale, and can scale to very high levels, while maintaining decentralization, usability, a peer to peer nature, very fast confirmation times, virtually non-existent fees, permissionless, with dapps on top.
Making the Casper upgrade the most anticipated implementation this space has seen since bitcoin’s invention nearly a decade ago.
Source: http://www.trustnodes.com/2017/11/28/ethereums-proof-stake-casper-testnet-nears-launch
「 Declaration: Please indicate the source if repost the article in UNITIMES. Opinions expressed by Contributors belong to themselves. 」


Pending Orders
Customer
Date
Total Price
Actions
Products
Activate
Active Orders
Customer
Date
Total Price
Actions
Products
Finish
Finished Orders
Customer
Date
Total Price
Actions
Products


{% extends "layouts/layout-1.html" %}
Since this template extends layout-1, and layout-1 has blocks, we must define blocks with the same names and all the content must be placed inside those blocks. So this part right here won't be visible.
hey there! this is page 3
{% block top %}
this is top block from page-1.html
global1.a (from page-1): {{ global1.a }}
username: {{ username }}
global2: {{ global2 }}
{% endblock %}
{# if we omit block bottom, the content inside the bottom block from layout-1 is what will be be shown #}
{% block bottom %}
this is bottom block from page-1.html
global1.a (from page-1): {{ global1.a }}
{% include "includes/inc-1.html" %}
{% endblock %}


About
Hello, I am Christiana Palaonta. I was born in Limassol in 1991. As a kid I always love taking pictures and videos and this is my hobbie now. I am doing this also as a part time job for weddings and christenings. I hope you will enjoy my work :)


jammat
Played 2D kitie with Jay - a game of my/our inventing (to be called "jammat"
henceforth). He found it fun.
Its a little better than just kitie. Std kitie (I am not sure of the spelling
- could not find a link) involves dealing 9 cards and making 3 triplets:
triples, or sequences, or pairs etc. One with better triplets wins. In the 2D
version we require the cards to be arranged in a 3x3 matrix thus
generating 8 triplets (3H, 3V and 2D). It is trikier to arrange them
thus. Again, the one with better triplets wins. in 3D one will have
39 triplets (or is it 44?) making it intractable (almost). It will start resembling
set or 4-in-a-row in some fashion.
Details
Deal 9 cards each to all the players. If you wish to have equal probabilities
or if there are more than 5 players, use multiple decks. Each player now
arranges the 9 cards in a 3x3 matrix (to get 8 3-ples: 3 vertical, 3 horizontal
and 2 diagonal).
1 2 3 4
| | |/
c c c-5
c c c-6
c c c-7
\
8
The player tries to maximize the following
types of 3-ples in that order:
- A triplet: 3 kings, or 3 4's etc. 3 Aces are the highest
- A sequence: 6-7-8 or 3-4-5 or A-2-3 or A-K-Q. A-K-Q is highest and 3-2-1 lowest
(though some games treat the later to be higher). Also, the 3 cards could be in
any order i.e. 2-3-A is the same as A-2-3. A "pure" sequence (i.e. a sequence all
of whose cards are from the same suite) is higher than an ordinary sequence. In fact,
any pure sequence is higher than every non-pure sequence.
- A color: 3 cards of the same suite e.g. 3, 5 and J of Hearts. If tw players
have colors in the same round, the higher cards (A counting as highest followed
by K-Q-J-10-9-8-7-6-5-4-3-2) determine the winner. All suites have the same value
i.e. there is no suite-hierarchy.
- A pair: 2 cards with the same face value (and clearly of different suites unless
multiple decks are mixed) e.g. H3, C3 and C7. A-pair is highest followed by K-pair
etc. In case of tied pairs, the third card decides the winner.
- highest card: when none of the above combinations is possible, the higher cards
determine the winner.
Once the 9 cards are arranged to maximize the above combinations, players
compare their 8 3-ples with those of others. Highest 3-ples are compared to the highest
of the others. One who wins more 3-ples is the overall winner.
Examples to come soon.
Feedback


EDtv (1999)
Director: Ron Howard Cast: Matthew McConaughey, Jenna Elfman, Ellen DeGeneres, Woody Harrelson, Martin Landau, Sally Kirkland, Rob Reiner, Dennis Hopper, Elizabeth Hurley Screenplay: Lowell Ganz, Babaloo Mandel Producers: Brian Grazer, Ron Howard Runtime: 123 min. US Distribution: Universal Rated PG-13: sex, partial nudity, language
Copyright 1998 Nathaniel R. Atcheson
EDtv is a satire so bland and toothless that I had trouble figuring out the target of its criticism. It's not a bad film -- it's elevated by a few excellent performances, and there are several funny moments. But EDtv wants to be a satire at the core, and it just isn't effective. And with The Truman Show still strong in our memories, it's hard to imagine another film on the same subject that measures up in any way. Perhaps I would have been easier on EDtv had it come out before Truman, but it didn't, and I won't.
Ron Howard has made some good movies, and I can see how he thought this one was going to be something special. The film begins with Rob Reiner as the president of a cable TV station; we see him telling a group of reporters that they're planning a new kind of television show -- "True TV." He brings in the programming director, Cynthia Topping (Ellen DeGeneres), to give the details of the show: they're going to have cameras on some average guy, twenty four hours a day, seven days a week. Uncut. Unscripted. Commercial-free. And they think everyone will watch.
The lucky man is Ed Pekurny, played by the affable Matthew McConaughey. Ed is a video store clerk of moderate intelligence, but he's a pretty nice guy overall. His family is more colorful than he is, though: his mother (Sally Kirkland) is an unstable, superficial woman who somehow manages to be likable. Her husband, Al (Martin Landau), is Ed's stepfather, and he's bound to a wheelchair.  Ray is dating Shari (Jenna Elfman); Ray isn't very nice to her, and so Shari and Ed end up getting together.
One of the several conflicts is pretty obvious without even seeing the film -- Ed is first going to soak up the fame, just before realizing that he hates it and wants his private life back. There's going to be a big problem with Shari. And, naturally, the Evil Corporation won't let him out of the show due to some ridiculous fine print on a contract he signed. If EDtv had defied my expectations by creating a more interesting conflict, it would have been a better film. But the overall story is tedious and unimpressive, and so the individual moments that work are forced to stand alone.
Here's a note to all film makers planning to make a film that satirizes the television industry: we know that the media intrudes on our private lives.  We know that Fame is a double-edged sword. If you're going to make a movie that tries to tell us these things, you need to be vicious (see Network) or artistically sublime (see The Truman Show). Howard seems way too concerned with the human story to actually put any bite into the satire, and so the film's focus is skewed. The human story is too goofy to be truly engaging, and the Rob Reiner character is too unbelievably mean to avoid looking like a cartoon (thus thwarting the satire).
But the film is not without its pleasures, most of them lying in the performances . Ellen DeGeneres is a wonderful comedic presence, and squeezes laughs out of every scene (especially the one in which she resigns from the station). Jenna Elfman is utterly believable and sympathetic as Shari, and I just want to hug her whenever she's on screen. Landau is also wonderful as the stepfather Al, and Kirkland does a good job by his side. And McConaughey, while he's no Harrison Ford, makes a good, amiable protagonist.
But EDtv ultimately whimpers to a close. One of the film's themes, I think, is that our lives are all worthy of soap opera-status. But the story in EDtv is too goofy and complex to take seriously, even though it's clear that Howard wants us to take it seriously by the end. And the satire doesn't work because it never reaches an acceptable level of bitterness. In the end, EDtv is just another mediocre swing at greatness. You might find it enjoyable while it's running, but a week later you probably won't even remember its name, let alone the target of its ridicule.
Psychosis Rating: 5/10
Visit FILM PSYCHOSIS at http://www.pyramid.net/natesmovies
Nathaniel R. Atcheson
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


---
layout: frontpage
---
{% assign index = true %}
We help nonprofits and funders collaborate, communicate and commit to shared success.
“Rebecca has deep technical knowledge
of how finance works…
…(and doesn’t!) in nonprofit
enterprises. She also understands intuitively how management, markets
and mission interact. Rebecca is a terrific communicator, is
emotionally intelligent, and knows how to get things done. If that’s
not enough, she’s a delight to work with!”


Worried about accurate maximum likelihood estimates of parameters, as the optimization could still converge on values not far from the starting conditions (not as surprising as the starting parameters are estimated intelligently first from the summary statistics) but could also vary depending on initial conditions.
Second, while it requires some re-parameterization, the stationary model for both linearized transcritical (LTC) bifurcation model and the linearized saddle-node (LSN) model are identically Ornstein-Uhlenbeck models. As this model is stationary, it’s unnecessary to continue numerically integrating the SDE to get the moments of the probability distribution, I can just use the analytic solution for the moments. I’ve written this in as a model class “constOU” in the likelihood_bifur_models.R library, which is of course much faster:
constOU <- function(Xo, to, t1, pars){
Dt <- t1 - to
Ex <- Xo*(1 - exp(-pars["Ro"]*Dt)) + pars["theta"]*exp(-pars["Ro"]*Dt)
Vx <- 0.5*pars["sigma"]^2 *(1-exp(-2*pars["Ro"]*Dt))/pars["Ro"]
if(pars['Ro'] < 0 ) Vx = Inf
if(pars['sigma'] < 0 ) Vx = Inf
return(list(Ex=Ex, Vx=Vx))
}
Turning these parameters into those used by LTC should not require any scaling, while the estimated Ro becomes root Ro in LSN.
As I explored earlier, with linear change in stability the analytic expression for the moments gives some integrals that can be solved, but still leaves some to be done numerically, so integrating the moment equations directly seems just as well. Note that I’m still using the Gaussian character of the model to integrate the moments, by using the linear noise approximation:
## LSN
moments <- function(t,y,p){
sqrtR <- sqrt(R(t,pars))
yd1 <- 2*sqrtR*(sqrtR+pars['theta'] - y[1])
yd2 <- -2*sqrtR*y[2] + p["sigma"]^2*(sqrtR+pars['theta'])
list(c(yd1=yd1, yd2=yd2))
}
## LTC
moments <- function(t,y,p){
yd1 <- R(t,pars)*(pars['theta'] - y[1])
yd2 <- -2*R(t,pars)*y[2] + p["sigma"]^2 ##check?
list(c(yd1=yd1, yd2=yd2))
}
Improving speed?
Attempting to improve the speed of the time-dependent fits. Most of the time is used by lsoda, not surprisingly. Worried that this time was simply in the initialization/allocation/cleanup of the integrator, which has to be called for each timestep in every calculation of the likelihood. If true, moving this into C I could have only a single allocation of the ode integrator which I could use for all timesteps, and I’d get a substantial speed increase.
R’s profile of time spent in lsoda:
$by.total
total.time total.pct self.time self.pct
"setmodel" 322.26 99.7 0.00 0.0
"lapply" 322.06 99.6 0.62 0.2
"<anonymous>" 321.96 99.6 122.98 38.0
"setLTC" 321.60 99.4 0.04 0.0
"FUN" 321.38 99.4 2.34 0.7
"lik.gauss" 320.02 99.0 0.02 0.0
"dc.gauss" 319.78 98.9 0.00 0.0
"fn" 319.38 98.8 0.00 0.0
"optim" 319.38 98.8 0.00 0.0
"updateGauss" 319.38 98.8 0.00 0.0
"lsoda" 318.88 98.6 15.56 4.8
".Call" 286.84 88.7 17.42 5.4
Not so much. Whole day of coding, debugging a few typos, and still bad performance when given long time intervals for the ode. Not clear why this is happening. See code here, may simply pull from future package.
Estimating Ro and the initial step-size for Nelder-Meade seem to be related to the issue – shrinking the step-size reduces the optimizer stalling, as does removing the dependence on “m” (the time-dependence) in the integration.
No go
Whether the time is really being lost in the allocation also isn’t clear. We can compare this at least in the context of the C code: 5399 runs code initializing only once per likelihood calc (over 50 pts). Most time is spent applying the ode evolver. 5556 runs the code initializing every interval. So overall doesn’t seem like this approach can save as much time as I had hoped. Pity I couldn’t get profile results from R’s lsoda alloc first. Lot of programming just to perform these profiles.
Better optimized searching
Several decent approximation routines to the likelihood of a generic (i.e. including our time-heterogeneous coefficients) SDE in Iacus’s sde package for R. Should probably pursue these instead, and continue the R based implementation. Need further study on convergence of estimates, but hopefully with faster likelihood optimization first. Will require a bit more exploring. Meanwhile, need more time on writing.


Meltwater Entrepreneurial School of Technology
Kenya Methodist University
Strathmore University
Your limitations are your opportunities.
I know where I belong.
I've been released and restored to where I belong.
+254 713 749968
+233 20 504 1590
<EMAIL_ADDRESS>P.O. Box 19924-00202, Nairobi Kenya


Rain...that is what it managed to do most of the way over to Holy Cross for Paul, Cindy, Jake and Lydia...when they arrived they found Robin. Dave, Buffy, Cari, Curtis and his dad Harry, Doug and Justin. Ray, Leah, Rose and Nathan joined us later that night...next morning dawned cool with a bit of a cloud cover that soon burned off as we trekked up the Holy Cross Road.
For most of the trip up we had no problems when we reached the tree we were joined by Terry and Sean who had managed to catch up with us...Sean now has his rig up and running but managed to get a ding in the door at the tree. Most of us didn't have too many problems until Frenchman creek and there is was really just a more interesting crossing now.
But just before the old mud bog we did find a spot that caused some concern and some decided to use the mud way instead of over the rocks...we did have one very adventurous person who dared the rocks and was very close to being a bit too high, but backed down and made it through all right.
When we got to the city some of us choose to stay behind while the more adventurous continued up to the lake...Jake had some problems and Dave managed to break an axle again...Jake sounded liked he had a monster truck on the way back. Those of us back at the city could hear the others calling out directions which sometimes caused us to wonder what was going on...Rosie kept herself busy by making mud pies, Nathan managed to attract the mpsquitos both of them had fun watching the chipmunk who would steal up to the back of the bronco and take the food that had fallen during lunch.
After a fun filled afternoon we headed back to have Paul run into trouble on Frenchman and had to be winched off the rocks, ran into some other 4 wheelers who were headed up to the city...one was not too happy about the delay, waiting for all of us to come down. the only other problem was a flat tire.
Sunday found Paul, Jake, Lydia, Doug, Justin and Ray headed for Yoder Gulch...Dave stayed behind to ready the trailer for an early start home. Leah, Rosie and Nathan decided to go for a walk to the river. Cindy stayed in camp working on some crafts.
Yoder Gulch was a short trip from the mountain top directly east of
the camp site, to a conclusion at Camp Hale. Although it was not a very
technically challenging trip the drive meandered its way down the creek
next to beaver dams and beautiful green meadows. There were a few mud
bogs and side hills to make things interesting, but otherwise it was a
very beautiful drive. After leaving the creek bottom the road became an
easy shelf road traveling through a long aspen grove and then opening up
into a open field directly above Camp Hale. The last 15 to 20 feet of
the trail was almost straight up and down ending next to the railroad
tracks. the highway and back to camp.
Total trip time was about 3 hours making it a nice get-away-day trip.


The Quest for a software documentation system
Software documentation is a thankless business and never complete. Picking the right system can make or break your documentation success
Contenders
We have a number of options commonly used, each with strengh and weaknesses.
- DITA: The OASIS Open Darwin Information Typing Architecture. Extremly powerful, especially the concept of single source definition: You define an item once and just reference it. XML based, suitable for complex documentation, but with a super steep learning curve, effectively prohibit community contributions
- jekyll: Markdown driven template engine, best known for driving GitHub Pages. With the Just-the-docs template it makes documentation creation a simple task in your repository's
/doc
directory. Running site generation and hosting is build into github, so no GitHub action or other CI/CD pipeline needed. Lacks good tooling for multi-version documentation - Maven sites: a good option when Java is your language. Tightly coupled to the build process it produces full reporting and JavaDoc. Can be a pain to setup
- Read the docs: Great destination for OpenSource documentation or your corporate documentation if the build server can reach it. Uses the MKDocs rendering engine
- and many, did I say many more
I found the tools quite impressive and somehow wanting at the same time. So taking a step back, it is worth to look at requirements
Will work for me, might not work for you
A good documentation system is like squaring a circle. Requirements most likely will conflict. Here is my list:
- File system based, so it can be versioned by Git and build by any CI/CD system including GitHub actions
- containable in a container for local run (pun intended)
- template driven approach (I like Mustache) so I can take any html layout to render
- main navigation structure following the file system structure, DITA doesn't do that, they use XML files, Jekyll does
- Single branch versioning. Here it gets tricky. most systems use Git branches to maintain versions of software, thus conflating "document version" with "software version". If you update / rectify content you need to jump branches and copy/paste - not an appealing
- Markdown (with extensions) support to build visual appealing results
- Integration of PlantUML
- comprehensive alternate navigation options (date, tags, changed)
- navigate to the same page for a different version of the software
- see the version in the URL too
Versioning
Since git branches isn't an option I thought to pack the version into the file name and meta data. Lets look at an example. Lets have a file dbsetup.md
in the docs/database
directory. It would result in the file getting rendered in all versions of the site somesite/database/[anyVersion]/dbsetup.html
. In the meta data I would add:
firstVersion: 0.0.1
lastVersion: 2.7.3
For 2.7.4
onwards we would use a new file dbsetup.2-7-4.md
with the respective meta data:
firstVersion: 2.7.4
The rendering engine would need to pick this up and write files into the version target directory. Something to ponder about
What do you need in your documentation?
Posted by Stephan H Wissel on 09 March 2022 | Comments (0) | categories: Software


Main Street
by Sinclair Lewis
Chapter 27
Additional Information
- Year Published: 1920
- Language: English
- Country of Origin: United States of America
- Source: Lewis, S. (1920). Main Street.New York: Harcourt, Brace & Co.
-
Readability:
- Flesch–Kincaid Level: 8.2
- Word Count: 1,186
- Genre: Satire
- Keywords: 20th century literature, american literature, main street, satire, sinclair lewis
- ✎ Cite This
Downloads
I
A Letter from Raymie Wutherspoon, in France, said that he had been sent to the front, been slightly wounded, been made a captain. From Vida's pride Carol sought to draw a stimulant to rouse her from depression.
Miles had sold his dairy. He had several thousand dollars. To Carol he said good–by with a mumbled word, a harsh hand–shake, "Going to buy a farm in northern Alberta—far off from folks as I can get." He turned sharply away, but he did not walk with his former spring. His shoulders seemed old.
It was said that before he went he cursed the town. There was talk of arresting him, of riding him on a rail. It was rumored that at the station old Champ Perry rebuked him, "You better not come back here. We've got respect for your dead, but we haven't got any for a blasphemer and a traitor that won't do anything for his country and only bought one Liberty Bond."
Some of the people who had been at the station declared that Miles made some dreadful seditious retort: something about loving German workmen more than American bankers; but others asserted that he couldn't find one word with which to answer the veteran; that he merely sneaked up on the platform of the train. He must have felt guilty, everybody agreed, for as the train left town, a farmer saw him standing in the vestibule and looking out.
His house—with the addition which he had built four months ago—was very near the track on which his train passed.
When Carol went there, for the last time, she found Olaf's chariot with its red spool wheels standing in the sunny corner beside the stable. She wondered if a quick eye could have noticed it from a train.
That day and that week she went reluctantly to Red Cross work; she stitched and packed silently, while Vida read the war bulletins. And she said nothing at all when Kennicott commented, "From what Champ says, I guess Bjornstam was a bad egg, after all. In spite of Bea, don't know but what the citizens' committee ought to have forced him to be patriotic—let on like they could send him to jail if he didn't volunteer and come through for bonds and the Y. M. C. A. They've worked that stunt fine with all these German farmers."
II
She found no inspiration but she did find a dependable kindness in Mrs. Westlake, and at last she yielded to the old woman's receptivity and had relief in sobbing the story of Bea.
Guy Pollock she often met on the street, but he was merely a pleasant voice which said things about Charles Lamb and sunsets.
Her most positive experience was the revelation of Mrs. Flickerbaugh, the tall, thin, twitchy wife of the attorney. Carol encountered her at the drug store.
"Walking?" snapped Mrs. Flickerbaugh.
"Why, yes."
"Humph. Guess you're the only female in this town that retains the use of her legs. Come home and have a cup o' tea with me."
Because she had nothing else to do, Carol went. But she was uncomfortable in the presence of the amused stares which Mrs. Flickerbaugh's raiment drew.
"Come in. Sit down. Stick the baby in that rocker. Hope you don't mind the house looking like a rat's nest. You don't like this town. Neither do I," said Mrs. Flickerbaugh.
"Why—"
"Course you don't!"
"Well then, I don't! But I'm sure that some day I'll find some solution. Probably I'm a hexagonal peg. Solution: find the hexagonal hole." Carol was very brisk.
"How do you know you ever will find it?"
"There's Mrs. Westlake. She's naturally a big–city woman—she ought to have a lovely old house in Philadelphia or Boston—but she escapes by being absorbed in reading."
"You be satisfied to never do anything but read?"
"No, but Heavens, one can't go on hating a town always!"
"Why not? I can! I've hated it for thirty–two years.  I ought to have been a business woman. I had a good deal of talent for tending to figures. All gone now. Some folks think I'm crazy. Guess I am. Sit and grouch. Go to church and sing hymns. Folks think I'm religious. Tut! Trying to forget washing and ironing and mending socks. Want an office of my own, and sell things. Julius never hear of it. Too late."
Carol sat on the gritty couch, and sank into fear. Could this drabness of life keep up forever, then? Would she some day so despise herself and her neighbors that she too would walk Main Street an old skinny eccentric woman in a mangy cat's–fur? As she crept home she felt that the trap had finally closed. She went into the house, a frail small woman, still winsome but hopeless of eye as she staggered with the weight of the drowsy boy in her arms.
She sat alone on the porch, that evening. It seemed that Kennicott had to make a professional call on Mrs. Dave Dyer.
Under the stilly boughs and the black gauze of dusk the street was meshed in silence. There was but the hum of motor tires crunching the road, the creak of a rocker on the Howlands' porch, the slap of a hand attacking a mosquito, a heat–weary conversation starting and dying, the precise rhythm of crickets, the thud of moths against the screen—sounds that were a distilled silence. It was a street beyond the end of the world, beyond the boundaries of hope. Though she should sit here forever, no brave procession, no one who was interesting, would be coming by. It was tediousness made tangible, a street builded of lassitude and of futility.
Myrtle Cass appeared, with Cy Bogart. She giggled and bounced when Cy tickled her ear in village love. They strolled with the half–dancing gait of lovers, kicking their feet out sideways or shuffling a dragging jig, and the concrete walk sounded to the broken two–four rhythm. Their voices had a dusky turbulence. Suddenly, to the woman rocking on the porch of the doctor's house, the night came alive, and she felt that everywhere in the darkness panted an ardent quest which she was missing as she sank back to wait for—There must be something.


Preparation time
less than 30 mins
Cooking time
30 mins to 1 hour
Serves
Serves 4
Dietary
This classic Italian soup made with cannellini beans and broken up spaghetti makes a comforting and budget-friendly supper. Feel free to stir in extra vegetables, depending on what you have in the fridge. This is designed to be a low cost recipe.
Heat the olive oil in a large lidded saucepan over a medium heat. Add the onion, carrots and celery, season with a little salt and pepper and cook for about 10 minutes, stirring occasionally until the vegetables have softened.
Add the garlic and fry for another minute. Stir in the tomato purée and cook for a further three minutes.
Tip in the tomatoes and stock. Cover with a lid and bring slowly to the boil. Reduce the heat to a simmer and cook for 15 minutes.
Add the beans and pasta and cook for a further 10 minutes, or until the pasta is cooked. Add the cabbage and cook for another two minutes. If the soup is too thick, add some hot water to reach your preferred consistency.
Season to taste with salt and pepper before serving.


Which months are the CO2 values at the maximum? Minimum? Why is this?
What rolling average is used in computing the “trend” line? How does the trend depend on the rolling average?
Last year, 2015, has now been confirmed as the warmest year on record. In this section we will analyze global mean temperature data.
Data from: http://climate.nasa.gov/vital-signs/global-temperature
Describe the data set to the best of your ability given the documentation provided. Describe what kind of column each data contains and what units it is measured in. Then address our three key questions in understanding this data:
Construct the necessary R code to import and prepare for manipulation the following data set: http://climate.nasa.gov/system/internal_resources/details/original/647_Global_Temperature_Data_File.txt
Plot the trend in global mean temperatures over time. Describe what you see in the plot and how you interpret the patterns you observe.
The 2013 IPCC Report included a tentative observation of a “much smaller increasing trend” in global mean temperatures since 1998 than was observed previously. This led to much discussion in the media about the existence of a “Pause” or “Hiatus” in global warming rates, as well as much research looking into where the extra heat could have gone. (Examples discussing this question include articles in The Guardian, BBC News, and Wikipedia).
By examining the data here, what evidence do you find or not find for such a pause? Present an analysis of this data (using the tools & methods we have covered in Foundation course so far) to argue your case.
What additional analyses or data sources would better help you refine your arguments?
Construct the necessary R code to import this data set as a tidy Table
object.
Plot the data and describe the trends you observe.
Construct the necessary R code to import this data set as a tidy Table
object.
Plot the data and describe the trends you observe.
Construct the necessary R code to import this data set as a tidy Table
object.
Plot the data and describe the trends you observe.
The data we analyzed in the unit introduction included CO2 records dating back only as far as the measurements at the Manua Loa observatory. To put these values into geological perspective requires looking back much farther than humans have been monitoring atmosopheric CO2 levels. To do this, we need another approach.
Vostok Core, back to 400,000 yrs before present day


ExecuteNextOpcode:
So far this tutorial has focussed on how the internals of the gameboy fit together and how to emulate each. I often mentioned how knowing how long each instruction takes to execute on the original hardware we can synchronize the graphics and timers. This information was acquired in the main update loop from the function called ExecuteNextOpcode, however I never gave an implementation to this function, mainly because it was to do with emulating the Z80 like processor, and I was leaving this to last. As I have discussed all other aspects of the gameboy I can now give the definition of this function.
int Emulator::ExecuteNextOpcode( )
{
int res = 0
BYTE opcode = ReadMemory(m_ProgramCounter) ;
m_ProgramCounter++ ;
res = ExecuteOpcode(opcode) ;
return res ;
}
int Emulator::ExecuteOpcode(BYTE opcode)
{
switch(opcode)
{
case 0x06:
CPU_8BIT_LOAD(m_RegisterBC.hi) ;
return 8;
case 0x80:
CPU_8BIT_ADD(m_RegisterAF.hi, m_RegisterBC.hi,false,false) ;
return 4;
case 0x90:
CPU_8BIT_SUB(m_RegisterAF.hi, m_RegisterBC.hi,false,false) ;
return 4 ;
case 0xAF:
CPU_8BIT_XOR(m_RegisterAF.hi, m_RegisterAF.hi, false) ;
return 4;
case 0x20 :
CPU_JUMP_IMMEDIATE( true, FLAG_Z, false ) ;
return 8;
case 0xCC :
CPU_CALL( true, FLAG_Z, true) ;
case 0xD0:
CPU_RETURN( true, FLAG_C, false ) ;
return 8;
case 0xCB:
return ExecuteExtendedOpcode( ) ;
default:
assert(false); return 0 ;// unhandled opcode
}
int Emulator::ExecuteExtendedOpcode( )
{
BYTE opcode = ReadMemory(m_ProgramCounter) ;
m_ProgramCounter++;
switch(opcode)
{
case 0xB :
CPU_RRC(m_RegisterDE.lo) ;
return 8;
case 0x73 :
CPU_TEST_BIT( m_RegisterDE.lo, 6 ) ;
return 8;
default:
assert(false); return 0; // unhandled extended opcode
}
Thats all there is to emulating the Z80 except of course actually implementing all the functions that are called from the switch statement :-).
Remember that all the CPU instructions you have to implement can be found in the Gameboy PDF im hosting.
8-Bit Loads:
The 8-Bit Loads put one byte of immediate data from memory into one of the 8 registers. So if the function CPU_8IT_LOAD takes a reference of one of the registers as an argument like opcode 0x06 then it can be used for all 8 registers. Opcode 0x06 loads one byte of immediate data into register B. Implementation:
void Emulator::CPU_8BIT_LOAD( BYTE& reg )
{
BYTE n = ReadMemory(m_ProgramCounter) ;
m_ProgramCounter++ ;
reg = n ;
}
8-Bit ADD:
This function adds one byte to one of the registes and sets flags. Like CPU_8BIT_LOAD if we pass a reference as a parameter then it can be used for all 8 registes not just register A as in the example (opcode 0x80). This function takes a total of 4 arguments, these are:
Argument 1: The register reference where the ADD result will be placed
Argument 2: The byte to add to the register if it is not immediate data
Argument 3: Wheter what we want to add to the register is immediate data
Argument 4: Wheter we also want to add the carry flag
This is the conditions the flags get set under:
FLAG_Z: If after the addition the result is 0
FLAG_N: Set to 0
FLAG_C: If the result will be greater than max byte (255)
FLAG_H: If there will be a carry from the lower nibble to the upper nibble
This is the implementation of 8-Bit ADD
void Emulator::CPU_8BIT_ADD(BYTE& reg, BYTE toAdd, int cycles, bool useImmediate, bool addCarry)
{
BYTE before = reg ;
BYTE adding = 0 ;
// are we adding immediate data or the second param?
if (useImmediate)
{
BYTE n = ReadMemory(m_ProgramCounter) ;
m_ProgramCounter++ ;
adding = n ;
}
else
{
adding = toAdd ;
}
// are we also adding the carry flag?
if (addCarry)
{
if (TestBit(m_RegisterAF.lo, FLAG_C))
adding++ ;
}
reg+=adding ;
// set the flags
m_RegisterAF.lo = 0 ;
if (reg == 0)
m_RegisterAF.lo = BitSet(m_RegisterAF.lo, FLAG_Z) ;
WORD htest = (before & 0xF) ;
htest += (adding & 0xF) ;
if (htest > 0xF)
m_RegisterAF.lo = BitSet(m_RegisterAF.lo, FLAG_H) ;
if ((before + adding) > 0xFF)
m_RegisterAF.lo = BitSet(m_RegisterAF.lo, FLAG_C) ;
}
8-Bit Sub:
This is pretty much identical to 8-Bit Add except its for subtractions. It still can use immediate data or the second argument and it can also minus the carry flag aswell. This is how the flags are affected:
FLAG_Z: If after the subtraction the result is 0
FLAG_N: Set to 1
FLAG_C: If the result will be less than 0
FLAG_H: If there will be a carry from the lower upper nibble to the lower nibble
void Emulator::CPU_8BIT_SUB(BYTE& reg, BYTE subtracting, int cycles, bool useImmediate, bool subCarry)
{
BYTE before = reg ;
BYTE toSubtract = 0 ;
if (useImmediate)
{
BYTE n = ReadMemory(m_ProgramCounter) ;
m_ProgramCounter++ ;
toSubtract = n ;
}
else
{
toSubtract = subtracting ;
}
if (subCarry)
{
if (TestBit(m_RegisterAF.lo, FLAG_C))
toSubtract++ ;
}
reg -= toSubtract ;
m_RegisterAF.lo = 0 ;
if (reg == 0)
m_RegisterAF.lo = BitSet(m_RegisterAF.lo, FLAG_Z) ;
m_RegisterAF.lo = BitSet(m_RegisterAF.lo, FLAG_N) ;
// set if no borrow
if (before < toSubtract)
m_RegisterAF.lo = BitSet(m_RegisterAF.lo, FLAG_C) ;
SIGNED_WORD htest = (before & 0xF) ;
htest -= (toSubtract & 0xF) ;
if (htest < 0)
m_RegisterAF.lo = BitSet(m_RegisterAF.lo, FLAG_H) ;
}
8-Bit XOR:
All the logical operators AND, OR and XOR work the same as ADD and SUB, except it doesnt care about the carry flag (so there is no fourth argument). The flags are set like so for XOR:
FLAG_Z: If the result is 0
FLAG_N: Set to 0
FLAG_C: Set to 0
FLAG_H: Set to 0
void Emulator::CPU_8BIT_XOR(BYTE& reg, BYTE toXOr, int cycles, bool useImmediate)
{
BYTE myxor = 0 ;
if (useImmediate)
{
BYTE n = ReadMemory(m_ProgramCounter) ;
m_ProgramCounter++ ;
myxor = n ;
}
else
{
myxor = toXOr ;
}
reg ^= myxor ;
m_RegisterAF.lo = 0 ;
if (reg == 0)
m_RegisterAF.lo = BitSet(m_RegisterAF.lo, FLAG_Z) ;
}
Jumps:
There are a fair few jump instructions but they all do the same thing. Jumps to a specific address, however most of the jump instruction only jumps if a certain condition is true. Some jump instructions jumps to the address pointed to by the next two bytes of the immediate data. Where the other jump instructions jumps to the current program counter + the next immediate data (called Jump Immediate). One jump instructions jumps to the address pointed to by register HL. This is the implementation of the JUMP_IMMEDIATE instruction:
void Emulator::CPU_JUMP_IMMEDIATE(bool useCondition, int flag, bool condition)
{
SIGNED_BYTE n = (SIGNED_BYTE)ReadMemory(m_ProgramCounter) ;
if (!useCondition)
{
m_ProgramCounter += n;
}
else if (TestBit(m_RegisterAF.lo, flag) == condition)
{
m_ProgramCounter += n ;
}
m_ProgramCounter++ ;
}
Calls:
The call instruction is the same as the Jump instruction which jumps to the address of the next two immediate data. However the difference is that a call is a subroutine and will eventually return to its current address, where as a jump doesn't. So in order to know where to return to we have to push the current program counter on to the stack.
void Emulator::CPU_CALL(bool useCondition, int flag, bool condition)
{
WORD nn = ReadWord( ) ;
m_ProgramCounter += 2;
if (!useCondition)
{
PushWordOntoStack(m_ProgramCounter) ;
m_ProgramCounter = nn ;
return ;
}
if (TestBit(m_RegisterAF.lo, flag)==condition)
{
PushWordOntoStack(m_ProgramCounter) ;
m_ProgramCounter = nn ;
}
}
Returns:
Now we've handled calls to subroutines we neeed to return from them. The way you return is you pop a word from the stack and assign it to the program counter (remember you pushed the program counter onto the stack with the call function). Once again we can put a condition on the return aswell.
void Emulator::CPU_RETURN(bool useCondition, int flag, bool condition)
{
if (!useCondition)
{
m_ProgramCounter = PopWordOffStack( ) ;
return ;
}
if (TestBit(m_RegisterAF.lo, flag) == condition)
{
m_ProgramCounter = PopWordOffStack( ) ;
}
}
Extended: Rotate Right Through Carry:
This instruction rotates a regiser A right and sets the carry flag with the least significant bit before the rotation. A right rotation means everything gets shifted right one and the most significant bit gets set to what the least significant bit was before the rotation. All the flags get set to 0 except the carry flag which as previously mentioned gets set to the least significant bit of reg a before the rotation
void Emulator::CPU_RRC(BYTE& reg)
{
bool isLSBSet = TestBit(reg, 0) ;
m_RegisterAF.lo = 0 ;
reg >>= 1;
if (isLSBSet)
{
m_RegisterAF.lo = BitSet(m_RegisterAF.lo, FLAG_C) ;
reg = BitSet(reg,7) ;
}
if (reg == 0)
m_RegisterAF.lo = BitSet(m_RegisterAF.lo, FLAG_Z) ;
}
Extended: TestBit:
This tests the bit of a byte and sets the approprite flags. The flags are set like so:
FLAG Z: Set if the bit is 0
FLAG_N: Set to 0
FLAG_C: Unchanged
FLAG_H: Set to 1
void Emulator::CPU_TEST_BIT(BYTE reg, int bit, int cycles)
{
if (TestBit(reg, bit))
m_RegisterAF.lo = BitReset(m_RegisterAF.lo, FLAG_Z) ;
else
m_RegisterAF.lo = BitSet(m_RegisterAF.lo, FLAG_Z) ;
m_RegisterAF.lo = BitReset(m_RegisterAF.lo, FLAG_N) ;
m_RegisterAF.lo = BitSet(m_RegisterAF.lo, FLAG_H) ;
}


The official client library for connecting to Bullhorn REST API
npm install --save @bullhorn/taurus @bullhorn/bullhorn-types
First, in the src folder create an app.js file. Then, you will need setup your Application with the credentials provided to you by Bullhorn.
Note: Don't have a
clientId
: Request one here
import { Staffing, StaffingCredentialsAuthProvider } from '@bullhorn/taurus';
const provider = new StaffingCredentialsAuthProvider('docsamson', '_bu11h0rn_');
const staffing:Staffing = new Staffing({
restUrl: 'https://login.bullhorn.com',
BhRestToken: '~BULLHORN_REST_TOKEN~'
});
staffing.login(provider).then(() => {
console.log('We Are Doing it!');
});
// or
const app = Staffing.loginWithPopup('https://login.bullhorn.com');
Now we need to get some data. Taurus provides several convience function to Search and retrieve entities within the system.
For this example we are going to get and entiy by id.
import { EntityTypes, Candidate } from '@bullhorn/bullhorn-types';
import { Entity } from '@bullhorn/taurus';
let record: Entity<Candidate> = new Entity(EntityTypes.Candidate).fields('id', 'name');
// Populate from server with data for Candidate #100
record.get(100);
// Listen for changes
record.subscribe((response) => {
console.log(record.data);
// output: {id: 100, name: 'Theodore'}
});
For this example we are going to search for some Jobs and display a list of them.
import { EntityTypes, Candidate } from '@bullhorn/bullhorn-types';
import { EntityList } from '@bullhorn/taurus';
let list: EntityList<Candidate> = new EntityList(EntityTypes.Candidate, {
fields: ['id', 'name'],
startAt: 0,
limitTo: 25,
filter: { isDeleted: 0 }
});
list.subscribe((response) => {
let total = list.info.total;
// TODO: Finish this
});
This tutorial will take you through creating a simple application using Taurus and briefly explain its main concepts. We assume you are familiar with JavaScript, HTML, and CSS. To get a quick overview, we recommend you skip down to the section titled "Setting Up The HTML Page" so you can see how to use Taurus straight away. To view the completed results of this tutorial, please have a look at our examples project.
Let's start by getting you set up with a great set of tools that you can use to build modern JavaScript applications. All our tooling is built on Node.js. If you have that installed already, great! If not, you should go to the official web site, download and install it. Everything else we need will be installed via Node's package manager (npm).
If you've followed along this far, you now have all the libraries, build configuration and tools you need to create amazing JavaScript apps with Taurus. The next thing we need to do is create our index.html file in the root of our project folder. Create that now and use the markup below.
<!doctype html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="//cdn.bullhorn.com/bullhorncss/1.0/bullhorn.css">
<script src="//unpkg.com/<EMAIL_ADDRESS><script src="//unpkg.com/axios/dist/axios.min.js"></script>
<script src="//unpkg.com/<EMAIL_ADDRESS><script>
var provider = new taurus.StaffingCredentialsAuthProvider('docsamson', '_bu11h0rn_');
var staffing = new taurus.Staffing({
useCookies: false,
client_id: '~~YOUR-BULLHORN-CLIENT-ID~~',
apiVersion: '*',
redirect_url: 'http://your-app.com',
authorization_url: 'http://auth.bullhornstaffing.com/oauth/authorize',
token_url: 'http://auth.bullhornstaffing.com/oauth/token',
login_url: 'http://rest.bullhornstaffing.com/rest-services/login'
});
staffing.login(provider).then(() => {
// Now we are authenticated
var list = new taurus.EntityList('Candidate', {
fields: ['id', 'name'],
startAt: 0,
limitTo: 25,
filter: { isDeleted: 0 }
});
list.subscribe((results) => {
// The list has retrieved your results
console.log('Results: ', results);
console.log('Total Candidate: ', list.info.total);
});
});
</script>
</head>
<body>
</body>
</html>
Yes, that's it. This is the only HTML page in our application.
We can install another npm package called live-server. This with host our application and watch the directory structure for any changes, there is no configuration, so it always works.
npm install -g live-server
You can now browse to http://localhost:8080/ to see the app.
Let's recap. To add a page to your app:
With its strong focus on developer experience, Taurus can enable you to not only create amazing applications, but also enjoy the process. We've designed it with simple conventions in mind so you don't need to waste time with tons of configuration or write boilerplate code just to satisfy a stubborn or restrictive framework.
If you need more help, check out the Documentation and Api Reference
built by Bullhorn, copyright (c) forever
Generated using TypeDoc


About the eLinguistics Foundation
The eLinguistics Foundation is an organization whose aim is to encourage the construction of infrastructure for the discipline of linguistics, and to provide financial aid to such efforts.
The eLF is a public charity. See the eLF IRS status page.
The eLF supports the following projects, activities, and institutions:


 Here are eight people - women, immigrants, corporate refugees, minorities, even kids - who got in on the action. Here's what they have to say about it .
A new blank slate
Matt Moog, 36
Viewpoints Network (viewpointsnetwork.com)
Chicago
I've always had the entrepreneurial itch. I started out working for Microsoft in business development. Then I got hired as the fourth employee at an online coupon company that later became Q Interactive. I was president when it went public in 2000. We took the company private again in 2005. I enjoyed growing Q Interactive to the size we did. But in a public company, you have a lot of other people to worry about.
I was working for Q Interactive when I came up with the idea for my new startup, Viewpoints Network. When it is launched next month, subscribers will be able to post and read reviews on the arts, events and other topics. Q Interactive wasn't interested in my business plan, so I showed it to venture capitalists, who were willing to invest $700,000.
The timing seemed right to go out on my own. I love the idea of starting a business with a blank slate, without the bureaucracy or legacy of a large company. Beginning with a blank slate, retaining majority control and taking more risks in the business - that's invigorating. I've told my friends I feel as if I'm 18 again.
--Phaedra Hise and Patricia B. Gray
http://www.suntimes.com/business/185850,CST-FIN-Moog26.article