[gecode-users] a help with matrix and a function for a constraint verification
Claudio Cesar de Sá
claudio at colmeia.udesc.br
Thu Apr 8 14:07:12 CEST 2010
Dear coleauges
The problem is easy in its formulation... however, it has been
difficult for me.
The output desired is a matrix NxN, filled with 0 and 1.
This matrix must be accepted by a checker function,
i.e., it is a constraint such:
f_checker( MATRIX , parameter_fix ) == TRUE
so, if this f_checker return TRUE, this solution admissible.
Questions:
Is possible to use something like
IntVarArray my_matrix; //
...................
public:
/// Actual model
My_problem(const SizeOptions& opt) :
my_matrix(*this, size*size, 0, 1)
{
Matrix<IntVarArray> MATRIX( my_matrix , size, size);
//How to post the constraint from a function, like:
f_checker( MATRIX , parameter_fix ) == TRUE
is it works?
// Install branching
branch(*this, my_matrix , INT_VAR_NONE, INT_VAL_MAX);
}
Is exist any alternative for directly to use matrix in Gecode?
Alternatives to work with matrix and constraints?
claudio
(
))
|""|-.
|__|-'
**********************************************************************
Skype: claudio_cesar_sa
Links:
http://laic.u-clermont1.fr/
http://www.colmeia.udesc.br/
http://www2.joinville.udesc.br/~coca/
http://www2.joinville.udesc.br/~esp7maratona/
Blog: http://claudiocesar.wordpress.com/
***********************************************************************
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.gecode.org/pipermail/users/attachments/20100408/79ca1f23/attachment.html>
More information about the users
mailing list


This is a sample application that demonstrates the authentication flow for an Java Spring web app using Auth0.
Auth0 supports social providers such as Google, Facebook, and Twitter, along with Enterprise providers such as Microsoft Office 365, Google Apps, and Azure. You can also use any OAuth 2.0 Authorization Server.
You can require your users to provide more than one piece of identifying information when logging in. MFA delivers one-time codes to your users via SMS, voice, email, WebAuthn, and push notifications.
Auth0 can detect attacks and stop malicious attempts to access your application such as blocking traffic from certain IPs and displaying CAPTCHA. Auth0 supports the principle of layered protection in security that uses a variety of signals to detect and mitigate attacks.
Actions are functions that allow you to customize the behavior of Auth0. Each action is bound to a specific triggering event on the Auth0 platform. Auth0 invokes the custom code of these Actions when the corresponding triggering event is produced at runtime.


[gecode-users] GecodeJ
Luis Quesada
l.quesada at 4c.ucc.ie
Wed Apr 4 22:24:30 CEST 2007
Guido Tack wrote:
> Luis Quesada wrote:
>
>> I am specifying this location:
>>
>> root at titanic:/home/luque/GecodeJ/release-1.0.1# ls -l
>> /home/luque/sources/gecode/gecode-1.3.0/misc/*.pc
>> -rw-r--r-- 1 luque luque 323 2006-10-23 11:59
>> /home/luque/sources/gecode/gecode-1.3.0/misc/gecode-minimodel.pc
>> -rw-r--r-- 1 luque luque 309 2006-10-23 11:59
>> /home/luque/sources/gecode/gecode-1.3.0/misc/gecode.pc
>> -rw-r--r-- 1 luque luque 330 2006-10-23 11:59
>> /home/luque/sources/gecode/gecode-1.3.0/misc/gecode-search.pc
>>
>>
>> The message I am getting is the following:
>>
>> root at titanic:/home/luque/GecodeJ/release-1.0.1# ./configure
>> GECODE_LIBS=/home/luque/sources/gecode/gecode-1.3.0/misc/
>
> There are two problem here: first, you have to set PKG_CONFIG_PATH to
> the place where the *.pc files are installed, and second, you have to
> install gecode somewhere first.
>
> Typically, if you configure Gecode (not Gecode/J), you can specify the
> prefix where it is installed. Assuming you did ./configure
> --prefix=<gecodeprefix> (with some concrete path for <gecodeprefix>)
> and then make install, you have to set the PKG_CONFIG_PATH environment
> variable to <gecodeprefix>/lib/pkgconfig. Then configure (in Gecode/J)
> should find the installed library.
Thanks a lot Guido!
By the way, there is a typo in the documentation:
The examples can be compiled using **make examples**
I think you mean **make javaexamples**
Cheers,
Luis
|
|
More information about the gecode-users
mailing list


RT @cxhansen: FutureTalk Doubleheader Monday! @arungupta Getting kids into programming with #Devoxx4Kids + CI with Java EE7 https://t.co/z9…
10/13/2014, 11:27:04 AM
Favs: 0
Retweets: 0
link--- layout: tweet ---
RT @cxhansen: FutureTalk Doubleheader Monday! @arungupta Getting kids into programming with #Devoxx4Kids + CI with Java EE7 https://t.co/z9…
10/13/2014, 11:27:04 AM
Favs: 0
Retweets: 0
link


Ask questions about the core tech here, but not questions about prices or personal questions or GUI and please don't DM JL777.
https://dexstats.info/richlistlookup.php?address=RLVzC4tr9cNKvuw2z4m8KuMfZURwCehx55
https://medium.com/@jameslee777
100 messages
Before 05-Dec-19 12:00 AM
CoinKing8803-Nov-19 03:45 PM
Is there a article about this new oracle solution? like a JL blog?
Read writing from jl777 on Medium. https://github.com/jl777. Every day, jl777 and thousands of other voices read, write, and share important stories on Medium.
Trustless oracles are quite a difficult problem, at least it was until I came up with a simple method that implements them.
heylo05-Nov-19 03:40 PM
Is this RK9ogyZ1W5CJS837ui7QDLcTaxqBVUtVxq the adress that the agamahack hacker used?
passcombo.com 🏴☠🏴06-Nov-19 04:31 PM
I was thinking if the faucet could be conditioned? like it seems goo idea to give away some coins per address but to me it only mae sense if one will use it for "testing purpose" to check if some functionality in an app will work or how easy it is to get some service and so ...
however if these are money per addr then abusers might create an addr every second and comulate it
jl777c06-Nov-19 04:31 PM
that is how it works now
small amount per address
passcombo.com 🏴☠🏴06-Nov-19 04:32 PM
so for example it can be conditioned to only be spendable to 1 addr ?
jl777c06-Nov-19 04:32 PM
no, it can be spent anywhere once you get it, but it takes a minute of CPU to get 0.1 coins
passcombo.com 🏴☠🏴06-Nov-19 04:33 PM
ah ok so it's kind of mining
good there is protection in place
I was thinking if spending address conditioning would be possible that would probably kill abusing or limit it also greatly
if a service got dedicated addr and you could only spend fauce cash there abusing makes little sense
is there also a time limit for faucet? for example to allow only 1 year or block num equivalent ?
actually having kind of "cupon service" where can get money but spend it only to 1 addr would be what many shops are doing with prepaid cards to promote themselves
for apps ans services that are starting would be good in initial period
jl777c06-Nov-19 04:39 PM
only fresh address that "mine" get the 0.1 coins. the protection is that the 0.1 coins is not worth spending a minute mining
1
jspook1606-Nov-19 05:40 PM
I'm digging the educational section. Hoping it is a regular thing.
Crabby Paddy06-Nov-19 11:31 PM
so you're telling me I can get 1kmd in 10 minutes?
PHBA206106-Nov-19 11:53 PM
no, only on AC with faucet module enabled, and if the faucet is funded(edited)
1
giotti9607-Nov-19 11:35 PM
Which is the best application of kmd
PTYX08-Nov-19 12:10 AM
Atomicdex is by far the best app launched by the kmd team
3
ComputerGenie 👴👴👴08-Nov-19 12:13 AM
thinks that it's komodod and not atomicdex; but, to each their own
Komodo Insight. View detailed information on all komodo transactions and block. {{ $root.title + $root.titleDetail }}
CoinKing8808-Nov-19 01:31 PM
Any easy way to copy the adress on my screen in the app into the Verus wallet? Typing it over is pretty tricky and is a disaster waiting to happen
Wow the transation went through very fast
Sorry, i am in this channel. Thought i was in the atomicdex channel
I was suprised you took time to reply but now i get it(edited)
hastrup09-Nov-19 07:38 AM
@CoinKing88 go to #support and ask there :)
blockchain_ocean11-Nov-19 02:03 PM
If there are 2 or more UTXOs that are greater than 10 in 1 address, will the staking rewards be added up?
CHMEX11-Nov-19 02:07 PM
Yes
blockchain_ocean11-Nov-19 02:07 PM
Thanks
crumb11-Nov-19 02:20 PM
strictly speaking, komodo has no staking. it's called komodo rewards. staking is something completely different
4
2
blockchain_ocean11-Nov-19 03:56 PM
mrdotboson13-Nov-19 06:05 AM
Any plans on launching a name service like .eth but for Komodo: .kmd ?(edited)
3
polycryptoblog13-Nov-19 06:30 AM
We have had some talks about it, but we would prefer to do it the “real” way through ICANN, but that process is slow and they haven’t opened gTLD round in some time
mrdotboson13-Nov-19 09:49 AM
I see
Thanks @polycryptoblog
Mylo13-Nov-19 11:15 AM
There is a post about BIP39 seed phrase entropy that was once shared with me. The explanation in it was showing how leaking the position of word reduces the entropy greatly.
Are you able to reshare the link if you are familiar with my request, jl or community?
Cheers
jl777c13-Nov-19 11:16 AM
just leaking the word, discloses the exact bits that must be in the privkey
our method hashes the entire seed, so even if a word is leaked, it wont give much advantage in decoding privkey
if the word and position is known, that is even worse with bip39 as that directly reduces the entropy bits
i dont remember any formal post, it was just something i wrote on discord
ICANN has finally killed off the .amazon generic top-level domain, ten months after its government committee urged that the application be rejected.
SHossain13-Nov-19 02:01 PM
do they refer Komodo dragons as KMD in Indonesia? Amazon directly wanted .amazon extension
Gordon Komodo13-Nov-19 02:01 PM
never heard of people saying they wanna go to kmd island in Indonesia (edited)
although they call Komodo dragons as just komodo
ComputerGenie 👴👴👴13-Nov-19 02:03 PM
never heard of people saying they wanna go to kmd island
do you no longer frequent #talk-trading?
2
Gordon Komodo13-Nov-19 02:03 PM
fixed that (edited)
joe2x413-Nov-19 02:07 PM
Well,I could always be wrong..
polycryptoblog13-Nov-19 04:52 PM
kmd is not the country code for Indonesia , the closest claimant to the gTLD is a small town. We have a strong claim because of our ticker, name and community size . If someone wants to try and do a non-ICANN domain name feel free to, just be aware of the benefits and drawbacks
Komodo. Contribute to dimxy/komodo development by creating an account on GitHub.
3
3
4
giotti9614-Nov-19 06:59 AM
Thank you
So only for Komodo
FlyingDutchman14-Nov-19 09:12 PM
where do the 5% rewards come from? Does the rate change w block reward changes and other thing?
polycryptoblog14-Nov-19 09:14 PM
Generated out of thin air , rate doesn’t change, rewards stop at block 7777777
polycryptoblog15-Nov-19 09:52 AM
@jl777c any chance of Ramchains making a reappearance ?
jl777c15-Nov-19 09:52 AM
what aspect of it?
polycryptoblog15-Nov-19 09:54 AM
Fast syncing(edited)
jl777c15-Nov-19 09:56 AM
fast syncing is definitely possible, even without the highly encoded ramchain data structures
but a much more efficient way would be to automatically validate a bootstrap using nspv
and having incremental bootstraps
polycryptoblog15-Nov-19 09:59 AM
Yes that does seem better as all it has to do is validate notarizations , didn’t think of nSPV being applied to bootstraps before
jl777c15-Nov-19 10:17 AM
just need to nSPV validate a tx in the latest bootstrap height at notarization. then the entire bootstrap is validated
1
Neko15-Nov-19 03:51 PM
@jl777c did you started komodo alone or did you had a partner
jl777c15-Nov-19 04:05 PM
i was the only core coder for the first years, but always there were others helping in other areas
14
jspook1615-Nov-19 08:29 PM
Do you know know if all of the new exchange listings were paid for or were they done by the exchanges own interest?
Oszy15-Nov-19 08:33 PM
afaik wasn't paid
jspook1615-Nov-19 08:43 PM
That implies people are starting to see the value in kmd I think
jl777c16-Nov-19 07:36 AM
we were surprised by the listing announcements and indeed china is starting to notice KMD. i think for a long time they wondered about the dragon in their govt rankings. now they begin to understand
KMD/BTC is the fourth highest volume at bilaxy, so that is quite a significant thing and i think other exchanges are feeling they are missing out on a lot of trading fees
18
steinsg816-Nov-19 11:43 AM
CHINA
If JL777 was JL888 we would be on Mars
Crabby Paddy16-Nov-19 11:45 AM
If ca333 was ca444 we’d be dead
4
calrb16-Nov-19 02:51 PM
@jl777c is there any way to get a bit of advanced notice for when the update will be done or when the exchanges will start accepting deposits again?
ComputerGenie 👴👴👴16-Nov-19 02:57 PM
a time-machine
3
jl777c16-Nov-19 04:10 PM
it will be announced when it is done
Neko16-Nov-19 09:20 PM
i think bittrexstill accepting
steinsg817-Nov-19 03:08 PM
Honest question that perhaps might make some people angry. How is it possible to justify the current value of the top 100 coins. Coins with 10-50k in transactions per a day are valued at over 100 mill. Seem like an illusion. Take komodo for example, what can justify the price? Technology? It's all open, can't someone take it? The team? You guys are amazing but 20 mill can prob make a great team. Utilization? There is not much use that would require coins to be purchased. Speculation? Of what exactly? There are 1000 coins competing to do nearly the same things. Anyone have an answer? I feel crypto will go to 80% under current prices in 1 year.
joe2x417-Nov-19 03:13 PM
When you clone jl777 then let's talk
jspook1617-Nov-19 03:14 PM
Yeah it's one thing to copy what he has done to this point but he still has the vision. And he is cranking out new developments and feature in crypto in general all the time.
As for price? Well currently I think it's speculation that kmd ecosystem will be able to efficiently support use cases in the future. What those are is really up to everyone that wants to implement something using their infrastructure
Then there's the dex and chips/pangea
The dex may provide fee relief or faster trading via kmd and chips I think will pass through kmd at some stage
ComputerGenie 👴👴👴17-Nov-19 03:18 PM
How is it possible to justify the current value of the top 100 coins.
it's mostly not
jspook1617-Nov-19 03:19 PM
Concur. Current value I think has mostly been established by the amount of fiat that has been invested into
ComputerGenie 👴👴👴17-Nov-19 03:20 PM
sunk mining cost factors in that too (somewhere), but that's more of an "excuse" than a "real" value
jspook1617-Nov-19 03:24 PM
Yeah there's that too. As far as coins competing for the same thing, true. Basically, do your research. If you believe crypto has a future, pick a few horses and see who hits the finish line first. If you don't believe crypto has a future, there's nothing wrong with that either.(edited)
jspook1617-Nov-19 03:39 PM
I think your on to something though regarding price drop. I think alot of the coins whose development has fallen behind will essentially tank. And that value will start moving into the more established coins. We're past the phase where any coin with a roadmap can establish funding. They'll need something tangible. Just my thoughts


Manhunt under way for driver who fled scene after smashing into a lamppost in Walker
Police are investigating a crash on Friday morning in Walker Road where the occupants abandoned the car
by Kieran MurrayPolice are hunting a driver who ploughed into a lamppost and fled the scene in Walker.
Officers were dispatched to the Walker Road just after 9am to reports that a Toyota Yaris had been driven into a lamppost.
The occupants of the vehicle, including a male driver, fled the scene and abandoned the vehicle before police arrived.
Officers erected a cordon on the corner of Walker Road and Belmont Street surrounding the car involved.
Dramatic images show the aftermath of the crash with the front end of the car destroyed.
A 30mph road sign can also be seen underneath the wreckage.
Officers are now investigating the collision and want to speak to anyone who may have any information.
A Northumbria Police spokesman said: "At around 9.10 am, a silver Toyota Yaris careened into a lamppost on Walker Road.
"The male driver and his passengers then fled the scene on foot, leaving the damaged vehicle behind.
"Enquiries are ongoing to identify all those involved and anyone with information that may help police should call 101 quoting log 223 291119."


Menu.js is a library for easily creating both static and dynamic menu interfaces.
The only other library that Menu.js requires is jQuery.
Also, you must include the menu.js script file after the "body" element of your document. Make sure to include a link to the "style.css" file as well.
Menus are created using javascript, using the new Menu(arguments) constructor. The constructor takes an associative array as its one argument. The array has a few required properties and many optional properties. Here is the structure of the array.
var arguments = { id: "unique_html_id", //REQUIRED items: array_of_objects, //REQUIRED getItemText: function(item){ //REQUIRED //returns the text that should be displayed for the menu item representing the item paramater }, getDescriptionText: function(item){ //OPTIONAL //returns the description text that should be displayed for the menu item representing the item paramater }, title: "Menu Title", //OPTIONAL openWith: keyCode, //OPTIONAL width: 40, //OPTIONAL maxItemsDisplayed: 10, //OPTIONAL wrap: true, //OPTIONAL onEnter: function(selectedItem){ //OPTIONAL //This will be called when the user hits the enter key with this menu open. } }; new Menu(arguments);
id: A unique menu id assigned to the corresponding menu html element.
items: An array containing the menu items, or the objects that will be used to generate the menu item data.
getItemText: A method that that takes a menu item (from the aformentioned "items" array) as an argument, and returns the text that should be displayed for the menu item corresponding to that object. When the menu is being generated or updated, the menu controller will iterate through each item in the items array and feed the item into this method to determine what text should be used.
getDescriptionText: This method operates very similarly to getItemText. Just like getItemText, this method is fed an item from the "items" array. Instead of outputting the corresponding menu item text, it outputs the corresponding description text for that item. This is an optional argument. If it is not included in the arguments array, the menu will not be displayed with a description box.
title: Determines the titleof the menu. This will be displayed as a header above the menu items.
openWith: The key you would like to be able to open and close the menu with. So if you would like the menu to be opened with the "a" key, set the attribute to "a". The only keys you cannot use here are "Escape", "ArrowUp", and "ArrowDown".
width: Corresponds to the width of the menu as a percent of the page width. It must be an even number less than or equal to 100. If the argument is not included in the arguments array, the width of the menu will be 50%.
maxItemsDisplayed: The maximum numbers of menu items displayed at one time. If set to a number less than the total number of menu items, the menu items will scroll. If not set, all the menu items will be displayed on the page at the same time.
wrap: Determines whether menu selection wraps or not. If set to true, when the last menu item is selected and the user hits the down arrow, the top menu item will be selected. Additionally, when the top menu item is selected and the user hits the up arrow, the last menu item will be selected. If set to false, nothing will happen in these scenarios. If not set, the menu will wrap.
onEnter: A function that will be executed when the menu is open and the user hits the enter key. The currently selected item (from the "items" array that you fed into the arguments array) will be fed into this method.
Let's say you had an array of "person" objects called "people". Each "person" has multiple properties associated with it, such as "firstName", "lastName", "email", etc. Let's say you want to set up a menu where each person in the array is represented by a menu item, and you want the text of each menu item to be the corresponding person's first name followed by a space followed by their last name. And let's say you wanted the description to display the person's full name as a header, with the word "email" followed by their email address bellow. And let's say you want to write the selected person's first name to the console when you hit the enter key. You might set up something like this:
function Person(firstName, lastName, email) { this.firstName = firstName; this.lastName = lastName; this.email = email; } var arguments = { id: "people_menu", items: people, getItemText: function(item) { return item.firstName + " " + item.lastName; }, getDescriptionText: function(item) { var descriptionText = "<h1>" + item.firstName + " " + item.lastName + "<\h1>"; descriptionText += "<div>Email: " + item.email + "<\div>"; return descriptionText; }, onEnter: function(selectedPerson) { console.log(selectedPerson.firstName); } }; new DynamicMenu(arguments);
With this setup, your menu will automatically update itself based on the "person" objects in the people array.
If the "items" array changes while the menu is open and you want the menu to reflect the changes, call the menu's update() method.
When your document loads, abstract javascript models of your menus will be created. You can access them with the global_menus variable. To access your menu objects, use global_menus.getMenu(MENU_ID). This function returns the menu object corresponding to the id you feed it!
There are two ways to open or close a menu. If you set the "openWith" argument when creating the menu, simply press the key corresponding to that keycode to open or close the menu. If you didn't set that argument, you can call the function global_menus.toggle(MENU_ID)" to open or close your menu. You can only have one menu open at a time. If you try to open a menu while another menu is open, nothing will happen. The escape key also closes whatever menu you have open.
By default, the first item in a menu is selected. To select a different item, use the up and down arrow keys.


history of Pat's Salmon Cookies
History of the Salmon Cookie! Ghoul salmon shark marlin. Dusky grouper blue shark stargazer California smoothtongue oarfish, Australian grayling moray eel dartfish eel-goby snailfish orangespine unicorn fish Asian carps triplespine warty angler.
Our branches :
SEATTLE
DUBAI
TOKYO
PARIS
LIMA
Opeaning Hour:
We are wating you From 6:00 Am to 8:00 Pm.
Telephone :<PHONE_NUMBER>55285
E-mail : cookiesstand@gmail.com


Click here to download the dataset as a CSV from Data.World
Click here to download the dataset as a Hyper Extract from Data.World
Historic Background
May is National Foster Care Month, so I thought it would be a good opportunity to dig into some data on Foster Care and Adoption. Foster care in the United States got its start in 1853. An overwhelming number of children in New York City, estimated at 30,000, were homeless or neglected, and called the streets of the city their homes.
Recognizing this issue and being called to do something to alleviate this problem, Charles Loring Brace and other local businessmen established the Children's Aid Society. This was a program that would eventually be known as the Orphan Train Movement. Brace sent these children to homesthroughout the United States via train with an aim to prevent them from experiencing 'a lifetime of suffering.' By the time of his death in 1890, Brace's program had helped place more than 120,000 children.
Though not a perfect solution, with reports of separated siblings or children being put to work as free labor, the work of the Children's Aid Society was ground breaking in creating a mechanism for homeless and neglected children to find a family. The most recent legislature focused on helping place children with foster families as well as providing help for adoption was the Adoption and Safe Families Act in 1997. A truly bipartisan bill, the legislature helped clear up issues in prior acts, especially around the adoption of special needs children.
While not for everyone, hundreds of thousands of kids in the United States benefit from foster care every year, and tens of thousands of kids are adopted. For more information on Foster Care Month, or foster care in general, click here.
We'd really love to see what you can do with this week's dataset! Download the data and see what you can visualize. Create your viz and post your work to Tableau Public and Twitter with the hashtag #ThrowbackDataThursday, tagging @TThrowbackThurs. We're really looking forward to seeing what the Tableau Community can come up with!
Data Source
This week's data comes from the U.S. Department of Health and Human Services, Administration for Children and Families - Administration on Children, Youth and Families, Children's Bureau. Please be sure to cite this source on your viz.
Definitions of the 'metric' column (quoted from the source indicated above):
- Children Served: This is an estimated count of all children who were in the public foster care system during the FFY. This number is the sum of two mutually exclusive groups of children: the children who are already in care on the first day of the fiscal year (as of October 1) and the children who enter foster care during the year. An individual child is counted only once for each year.
- In Care on September 30th: This is an estimated count of all the children in foster care on the last day of the FFY. An individual child is included in the count for each year for which he or she is in foster care on the last day.
- Entered Care during FY: This is an estimated count of all children who entered foster care during the FFY. An individual child is counted only once for each year, even if the child entered, exited and reentered care during the year. The most recent date of removal from home is used to determine whether the child entered foster care during the period. If an individual child entered in one year and then exits and re-enters in a subsequent year, he or she is included in the count of entries for both years.
- Exited Care during FY: This is an estimated count of all children who exited foster care during the FFY at the end of their most recent foster care episode. An individual child is counted only once for each year, even if the child exited, re-entered and exited again during the year. The most recent date of discharge (from foster care) is the one counted. If an individual child exited care in one year and then re-enters and exits again in a subsequent year, he or she is included in the count of exits for both years.
- Waiting for Adoption: This is an estimated count of all children who are waiting to be adopted on the last day of the FFY. An individual child is included in the count for each year in which he or she is waiting to be adopted on the last day. There is no Federal definition for children waiting to be adopted. For the purposes of this analysis, children waiting to be adopted include children with a goal of adoption and/or whose parental rights have been terminated. The “waiting” population excludes children whose parents' rights have been terminated, who are 16 years old and older, and who have a goal of emancipation. An individual child is included in the count for each year that he or she has these characteristics on the last day of the year.
- Parental Rights Terminated: This is an estimated count of all children in care on the last day of the FFY whose parental rights have been terminated and who are waiting for adoption. An individual child who has these characteristics on the last day of the year is counted only once for that year.
- Adopted: This is an estimated count of all children adopted with public child welfare agency involvement during the FFY. An individual child is counted only once for each year, even if (in rare cases) the child was adopted multiple times during the year. In cases when an individual child is adopted in one year and then adopted again in a subsequent year, he or she is included in the count of adoptions for both years.


IOTA holders will receive an updated version of the Firefly Wallet with an implemented option to vote.Votes are
related to the balance of a user.
100 Mi = 100 million votes
{% set votingInfolist = collections.votingInfo %}
{% for v in votingInfolist | reverse %}


Page1
These buttons are secured by the following RBAC permissions
Object: Page1; Operation: Button1;
Object: Page1; Operation: Button2;
Object: Page1; Operation: Button3;
© 2023 iamfortress.net


This is my web-home, built as a practice of the front-end skills. Mostly static pages, where I went for an elegant design, with the help of Bootstrap and fullPage.js plugin. The whole site has been set on Octopress, which suits my personal needs well for blogging purposes.
A Rails app, built as a practice of skills gained throughout first few months of my web development learning. This is my implementation on a to-do list app. I tried to use as many basic Rails features as possible.


from random import choice
from random import randrange as rr
from itertools import chain
from itertools import izip
[docs]def subdivide_groups(items, divisions=2):
"""Divides a list of items up into subdivisions based on `divisions`.
For example, [1, 2, 3, 4] with 2 divisions
becomes [[1, 2], [3, 4]]
or, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] with 5 divisions
becomes [[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]].
Numbers that cannot be distributed equally will
have the remainder added to the last group.
"""
groups = []
num_items = len(items)
last_offset = 0
# Determine the length of each subdivision
sections = num_items // divisions
for _ in range(num_items):
# Append based on current range, shift, repeat.
sub_group = items[last_offset:last_offset + sections]
# Any uneven offsets will simply be empty -- don't include them.
if sub_group:
groups.append(sub_group)
# Update the last offset for the next index.
last_offset += sections
return groups
[docs]def swap_item(items, a, b):
"""Swap an item a with b, in a list.
Used primarily for sorting algorithms."""
copy = items[a]
items[a] = items[b]
items[b] = copy
return items
[docs]def slice_dict(ref_dict, start, end):
"""Create a subsection (slice) of a dictionary, like a list."""
sliced = {}
for k, v in ref_dict.iteritems():
if k < start:
continue
if k == end:
break
else:
sliced[k] = v
return sliced
[docs]def powerset_list(main_list, side='left'):
"""Return staggered offsets of lists of a given list.
e.g. [1, 2, 3] => [[1, 2, 3], [1, 2], [1]]
`side` determines which way to offset: left, or right.
Switching sides would be the same as reversing the list beforehand.
"""
if side not in ['left', 'right']:
raise TypeError
return [[main_list[k:] if side == 'left' else main_list[:k]]
for k, _ in enumerate(main_list)]
[docs]def substring_list(string):
"""Return all substrings of a given string as a list."""
return [string[k:] for k, char in enumerate(string)]
[docs]def substring_dict(string):
"""Return all substrings of a given string as a dict."""
sub_dict = {}
for i in range(0, len(string)):
sub_dict[i] = {i: string[i:] for _, char in enumerate(string)}
return sub_dict
[docs]def powerset_tree(lst, initial=True, terminator=''):
"""Creates nested powersets of the word list for each key
-- the result is effectively a suffix tree.
`terminator` is a string value that can be passed in to terminate
each parent element in a list -- indices can be used to denote
the same thing, but it gives a visual option if you prefer.
"""
# If it happens to be a list, convert it first.
if isinstance(lst, str):
lst = substring_list(lst)
# Go over each item in the list...
for k, substr in enumerate(lst):
# If it's the very first item in the **top outer most list**,
# just make it a singleton list, since it's the full string
# and we don't want to subdivide it.
if initial:
lst[k] = [substr + terminator]
# Make sure to set this to false so it **never runs again**.
initial = False
else:
# If the substring is a singleton list, continue,
# as it's the last item in the substring sublist.
if len(substr) == 1:
continue
# Otherwise, recursively travel down into this list,
# repeating the process with a string one character
# smaller than the last -- but nest it inside
# this list so the parent is referenced as the first key
# and the children elements are
# inside the second key, as a list.
lst[k] = [substr + terminator, powerset_tree(
substring_list(substr[1:]), initial=initial)]
# Return the final list.
return lst
[docs]def take_choice(options, maximum):
"""Return an array of random choices.
Choices are seeded from `options` from 0 until `maximum`."""
return [choice(options) for _ in range(maximum)]
[docs]def random_number_set(min_rand=0, max_rand=9999, max_range=100):
"""Generated a list of random number sets."""
return [rr(min_rand, max_rand) for _ in range(max_range)]
[docs]def random_number_sets(sets=2, max_random=50):
"""A mutli-valued version of `random_number_set`"""
return [random_number_set(0, 9999, max_random) for _ in range(sets)]
[docs]def interleave(*lists):
"""Interleave N lists into each other;
e.g. [1, 2], ['A' 'B'] => [1, 'A', 2, 'B']"""
return list(chain.from_iterable(izip(*lists)))


Buy yout tickets here!
Select the amount
Step 1: Select the number of tickets you want
Step 1: Select the number of tickets you want
Step 2: Select the tipe of ticket you want
Ticket
Normal
Platinum
Diamond
Benefits
None
Snack service
+ Catering
+ Networking
Season Pass
Ks 449
Ks 999
Ks 1799
Ks 2299
Battle Pass
Ks 549
Ks 1199
Ks 1999
Ks 2599


CSIT Elective
CST 363: Introduction to Database Systems
This course provides balanced coverage of database use and design,focusing on relational databases. Students will learn to design relational schemas, write SQL queries, access a DB programmatically, and perform database administration. Students will gain a working knowledge of the algorithms and data structures used in query evaluation and transaction processing. Students will also learn to apply newer database technologies such as XML, NoSQL, and Hadoop.
[Prereq: CST 238 AND MATH 130]
Units: 4
& Me:
I thoroughly enjoyed this class. Getting more into SQL has been on my list of things to do for a while now, so having this very clear and easy to follow course really helped me with getting into the mindset to learn further. The combination of intro to PHP and websites really helped explore why SQL is so important and the forefront of the industry. Making the teachings relevant to real-life work worked very well to keep my interest and focus on really understanding every aspect of the course.
Read About This Class...Results / Outcome:


There were more variety in music in the 1970s than ever before. Music listeners had dozens of genres to choose from and many of them rose to popularity at different points during the decade. Funk, Soul, R&B, Pop, Hard Rock, Soft Rock and Disco all carved out their place in the music world in the 1970s. The late 70s also witness the birth of another young music style: hip-hop. Some of the best Rock N’ Roll of all time was recorded in the 70s. From David Bowie to Led Zeppelin to Pink Floyd, the list I could make would keep you scrolling for days. The 70s were a golden era for vinyl records. They were affordable to everyone and everyone had a record player. It seems like almost every song ever made in the 80s had a 70s sample in it. Music equipment had finally given artists more than 4 tracks to work with and music became much more experimental than it was technically capable of being in the 60s.
If ever a musical style defined a decade, Disco was the definition of the 1970s. Although its popularity was relatively short-lived, the genre hosted a great deal of songs and artists that people are still dancing to today and had a large influence on the fashions of the decade, too. Van McCoy's "The Hustle" has often been referred to as the definitive disco track and many people say it was the first disco song created.
The Bee Gees, English-Australian pop-rock band that embodied the disco era of the late 1970s. In becoming one of the best-selling recording acts of all time, the Bee Gees (short for the Brothers Gibb) adapted to changing musical styles while maintaining the high harmonies, elaborate melodies, and ornate orchestrations that were their trademark. The principal members were Barry Gibb, Robin Gibb, and Maurice Gibb.
Swedish Europop group that was among the most commercially successful groups in the history of popular music. In the 1970s it dominated the European charts with its catchy pop songs. Members included songwriter and keyboard player Benny Andersson, songwriter and guitarist Björn Ulvaeus, and vocalists Agnetha Fältskog. and Anni-Frid Lyngstad.
Progressive rock was another popular genre during the 1970s. This type of music was typically characterized by rock music combined with another genre, such as classical or opera, to create a hybrid genre. Songs from this genre were often longer and bands tended to be more spontaneous and experimental while they were playing live. Many progressive rock albums were also concept albums, meaning that they followed a theme throughout the entire album or series of albums.
Pink Floyd was an English rock band formed in London in 1965. Gaining a following as a psychedelic rock band, they were distinguished for their extended compositions, sonic experimentation, philosophical lyrics and elaborate live shows, and became a leading band of the progressive rock genre. They are one of the most commercially successful and influential groups in popular music history. The principal members were lead guitarist Syd Barrett, bassist Roger Waters, drummer Nick Mason, keyboard player Rick Wright, and guitarist David Gilmour.
British rock band whose fusion of heavy metal, glam rock, and camp theatrics made it one of the most popular groups of the 1970s. Although generally dismissed by critics, Queen crafted an elaborate blend of layered guitar work by virtuoso Brian May and overdubbed vocal harmonies enlivened by the flamboyant performance of front man and principal songwriter Freddie Mercury. The members were Freddie Mercury, Brian Ma, John Deacon, and Roger Taylor.
British rock band that was extremely popular in the 1970s. Although their musical style was diverse, they came to be well known for their influence on the development of heavy metal and progressive rock. The members were Jimmy Page, Robert Plant, John Paul Jones, and John Bonham.
The punk rock genre also emerged in the 1970s. This was a style that continued on the legacy of the 1960s but with a more upbeat and harder style. Heavy guitar riffs and more decibels helped to motivate those who were still upset about the status quo in the country. On the other hand, New Wave, similar to punk music but more radio friendly and with an electronic flair, also emerged in the late seventies and went on to become a predominant genre in the next decade.
David Bowie, British singer, songwriter, and actor who was most prominent in the 1970s and best known for his shifting personae and musical genre hopping.
American band that influenced the rise of punk rock on both sides of the Atlantic Ocean. The original members were Joey Ramone, Johnny Ramone, Dee Dee Ramone, and Tommy Ramone.
Funk music came out of the R&B, Jazz and Soul music of the late 1960s after artists added more beats and psychedelic tones to their songs. This genre saw the height of its popularity encompass the 1970s with artists like James Brown, Parliament-Funkadelic, Sly and the Family Stone and Kool and the Gang dominating the music charts. Funk was known for its danceable beats, strange costumes, outrageous personalities and often socially conscious lyrics.
Earth, Wind & Fire, American pop, soul, and jazz-fusion band that became one of the best-selling and most influential groups of the 1970s. The principal members were Maurice White, Philip Bailey, Verdine White, Fred White, Al McKay, Johnny Graham, Ralph Johnson, Larry Dunn, and Andrew Woolfolk.
Known as the “Godfather of Soul Music.” James Brown, American singer, songwriter, arranger, and dancer, who was one of the most important and influential entertainers in 20th-century popular music and whose remarkable achievements earned him the sobriquet “the Hardest-Working Man in Show Business.”
Elton John, British singer, composer, and pianist who was one of the most popular entertainers of the late 20th century. He fused as many strands of popular music and stylistic showmanship as Elvis Presley in a concert and recording career that included the sale of hundreds of millions of records.
John Lennon, in full John Winston Ono Lennon, (born October 9, 1940, Liverpool, England—died December 8, 1980, New York, New York, U.S.), leader or coleader of the British rock group the Beatles, author and graphic artist, solo recording artist, and collaborator with Yoko Ono on recordings and other art projects.
Billy Joel, in full William Martin Joel, (born May 9, 1949, Bronx, New York, U.S.), American singer, pianist, and songwriter in the pop ballad tradition whose numerous hit songs in the 1970s and ’80s made him an enduring favourite on the concert circuit.


This online tool is part of the opencare project, a research project firmly committed to radical openness.
For more information, consult the project website Opencare.cc,
get acquainted with the complete project workspace or visit the GitHub page.
Partners
This project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No 688670
Technologies
This solution is available thanks to the following technologies:


Home
About
Shop
Sales
Create a new location
Store Name:
Minimum Customer Per Hour:
Maximum Customer Per Hour:
Average Cookie Per Sale:
Create Location


So I've been toying with the idea of starting a page and blog while I work to expand my development skills beyond what I've done, so why not use this one, eh?
I know, this is a pretty basic looking page, but it's also just plain old-fashioned HTML, so as I get deeper into JavaScript, it'll start looking a bit more fancy.
Oh, and if you're interested, here's what I currently
use in my life in IT DevOps and as a beginner developer.


Look inside Keynsham pub The Brassmill after reburishment
"We hope added features will be loved by all our guests, both regulars and first-timers"
by Giulia Bernacchi, Zosia EyresA pub is once again welcoming locals after a major refurbishment.
The Brassmill in Keynsham re-opened on November 7 with a fresh new look.
The pub, part of Vintage Inns collection, has an extensive food offering, with dishes including slow-cooked pork belly with black pudding mash, crispy crackling, baby spinach, green beans and a brandy and pink lady apple jus.
The rural charm and rustic character is perfectly set amongst its picturesque surroundings providing the perfect backdrop for savouring its extensive menu.
Landlady Catherine Magee said: “We wanted the new look to provide guests with a cosy pub where they can enjoy dinner, have a few drinks after their busy day or simply to relax with their four-legged friends and read the Sunday paper.
View gallery
The Brassmill has been serving the Keynsham community for 25 years and is full of history, the pub was once at the centre of the Bristol brass industry when the site served as a mill for brass production from the early 18th century until the mid-19th century.
"We hope that added features such as out new patio space will be loved by all our guests, both regulars and first-timers.”
The pub is located on Avon Mill Lane and can be enjoyed throughout the year, whether you’re relaxing in front of a roaring fires in winter or making the most of the long summer nights in their outdoor dining area.
You can also sample a selection of gins , ales and wines on offer behind the bar.
For the latest news in and around Bristol, check back on Bristol Live's homepage .


Have you ever had an object that is so personal to you, or has such an interesting story behind it, that you wished it could be displayed for others to enjoy and learn from? Well, then That Belongs In a Museum is an event for you. Based on the idea that museums should catalogue human life through objects: from the grandest artifacts, to the everyday chotchkies and talismans of human experience, That Belongs in a Museum gives you the opportunity to bring along a cherished object, tell us why it's important, and have it catalogued online for others to see. Join us for one of our events.
Bring a thing with you. It should be able to fit through the door and it should probably fit on the stage. It could be imaginary but we suspect that might just be weird. Presenters are chosen at random. There is a chance that you won’t get chosen. You will probably get chosen.
When you arrive, we will have a number of museum tags, if you want to present you simply fill out a tag with your name and a description of your object. We take the tags and put them in a hat, we pick them at random and then it's your objects time-to-shine. You have five minutes to talk. You can talk for less than than five minutes. In fact, we strongly urge you to talk for less than five minutes. After that people will clap, we will take your object and photograph it and put it online in our collection along with the recording of your talk.
What you brought, even if it is obvious.
Why you think it is neat.
What kind of museum does this belong in? Even if you had to make it up.

Curator of bad decisions
Conservator of shiny objects
Imaginary curator
If you would like to get involved in running future events we would love your help, please contact us through Twitter or Facebook!


This is a multiplayer fighting game that is, essentially, an "mspaint" parody of Super Smash Bros. The game supports up to four players both locally and online. You can even have more than one player on the same computer when playing online!
Here are the characters currently in the game:
|
Dr. Tentacle
|
Sad Sword
|
Liquid
|
|
Sanic
|
Rock Lobster
|
Thundersnow
|
|
fappy tails
|
Shaydoh
|
Beowulf
|
|
GOD
|
As for levels:
In the future, I hope to host a download link for the latest version on this site. The game's "Alpha" state means that there are still bugs being found and there is lots of planned content that is not yet in the game. Alpha testing is just among my friends and I for now.
Finally got around to this. Man I am great at updating games noone knows about! Anyway, this time around
we've got a new character, some important bug fixes, and some balance changes to make the game more EXCITING.
Here's the list of changes:
New Features and Balance Changes:
✔Made Liquid’s GN up hitbox much bigger
✔Increased damage and knockback growth for Liquid’s GN down
✔Nerfed fappy tails’ max jump force to 80 (was 150)
✔Buffed Rock Lobster’s GN neutral, hitbox comes out on frame 5 instead of 8
✔Buffed Rock Lobster’s GN down, more base knockback and knockback growth
✔Buffed Rock Lobster’s GN side with more knockback growth
✔Buffed Rock Lobster’s AN, hitbox now comes out on frame 8 instead of 11
✔Buffed Shaydoh’s bazooka (GN down), more damage, knockback, and kb growth, changed knockback to non-vortex (simple 45 degree angle upwards)
✔Nerfed Shaydoh’s bullets to have less hitstun
✔Buffed Shaydoh’s orbital laser and NS, both should kill closer to 100 damage
✔Buffed Shaydoh and Sanic’s recoveries, their Up Specials now go further and faster
✔Updated Dr. Tentacle’s GN side animation to only change the sprite once the hitbox is out
✔Nerfed Dr. Tentacle’s GN up to prevent touch-of-death juggling combos, more base knockback and kb growth, less hitstun
✔Nerfed Sad Sword’s GN up to prevent touch-of-death, more kb growth and less hitstun
✔Buffed Thundersnow’s GN neutral and GN up attacks, the lightning bolts are now MUCH bigger
✔Buffed Thundersnow’s GN down, GN side, and AN with more knockback growth
✔Add new character, GOD
✔Buffed Beowulf’s recovery
✔Increased the size of the hitbox for Beowulf’s first GN neutral attack, extends further down now
✔Buffed Beowulf’s attacks:
Bugs fixed:
✔Player tags and invincibility effects were staying around after death
✔New players were joining with their team displayed as 0
✔Fixed an error with Beowulf’s GN neutral animation, the second hit had the hitbox come out way too early
✔AIs had a problem with running a shit-ton of the same coroutine all at once
✔Camera was jerky because it was going between the two players who were furthest away, now its center point is an average of every player’s position
✔Party Bus had issues with the collider because it wasn’t slippery like other stages
✔Code for handling removed players has been updated, hopefully this fixes lobbies glitching out (doubt it)
I decided on a whim that I'll just finalize version 12 now. All that's really
new are some bugfixes, balance adjustments, and of course the big one: AI.
 Tentacle could slide while crouching, wrong and OP
✔Beowulf’s particle effects were flipped incorrectly
✔Sad Sword’s orb was doing no damage or knockback
✔Rock Lobster’s special just decided to stop grabbing people, was an issue with grabs having no knockback or angle set (which they don’t need)
Website is back up, to the relief of actually zero people. In other news, AI players are, as far as I'm concerned, ready for their first outing in the next update. I'm going to add some more content in first, then y'all get the deets, mmk?
THE TIME HAS COME AND SO HAVE I. With DMC4 quoting out of the way,
here's the big list of changes in this update!
New Features and Balance Changes:
✔Added a setting to determine if the top kill boundary should kill regardless of hurt state, applied it to Sanic Land so that the spikes at the top kill if one jumps too high
✔Gave Dr. Tentacle more jump height
✔Added a new character, Rock Lobster
✔Added another new character, Thundersnow
✔Moved character controls to a generic script.  This bug might have been fixed. Testing is needed.
✔Fixed Sad Sword and Dr. Tentacle’s crazy GN neutrals, lots of damage and hitstun with too little knockback
✔Sad Sword’s orb wasn’t working when used twice in a row
✔Grab cooldown meters weren’t drawing in front of level platforms (the sprite on each character had to be changed to have a higher order in the layer)
✔RGB Land needed the options menu
✔Sad Sword could get stuck on part of the Aeroplane with his AN, his AN now has a condition to cancel if he has stopped moving
✔Fixed a problem with the grab meter’s cap, of course Rock Lobster was the only cause
✔Sanic could jump just as his US ended if he started it on the ground
✔Fixed the camera not knowing left from right boundaries and re-coded the maximum size
✔Fixed an issue that was preventing Sad Sword from getting respawn invincibility
✔Fixed a camping exploit that allowed Sad Sword to teleport inside of Snowy Summit and The Aeroplane
✔Level loading was very finicky, games could end prematurely if a second player didn’t load fast enough
✔fappy tails had a lot of trouble building speed on clients
I TOLD YOU THIS WAS A BIG UPDATE! The game still has some really important things that need
to be added in before it's ready for a public release. Proper menus, offline multiplayer that
you can just jump into, configurable controls, AI players, and some sort of singleplayer mode
with co-op immediately jump to mind. As big as this update may have been to me, this game has
much further to go. As you can probably tell, most of the time was spent adding these 5 new
characters. I had been wanting to expand the cast more since new characters were all my friends
would get excited about, generally speaking. So how do ya like THEM apples!? Anyway, I'll wait
until I've tested this new update with my friends before I decide for sure what the next update
will focus on. I may just do AI players and see how that works out, as this game is really in
need of some kind of co-op mode, but the menus would need updating whether or not I put in AIs.
Oh, and please don't look at the 7th character. PLEASE.
It is with no small amount of relief that I announce that the worst of the next update is now done. Sprites for another new character are now finished. What's left for this update? Well, I need to make the character functional, which involves finishing up the hitboxes, adding sound effects, doing the animations and transitions, and adding in a few special properties. After that, I'll add that SECRET new level, add music for all the levels, and make the best trailer eva made, which will be posted on this site along with the update blog. I have many more ideas for this game, but they will have to wait for future updates! I'm excited to finish this one up and will probably upload some footage of my friends and I playing alpha version 11. Until next time...
 I've added a tiny bit of info on the new update. There will be two new levels in addition to a bunch of other things I've been working on. I mentioned a new menu theme last update, but that's being put to the wayside for now (I hadn't made much of the song, anyway). I've been messing with game balance things like gravity and hitstun a lot. I've also made an entirely new level select screen. It's barebones, but it's more usable than the two arrow button system the game used before.  That last one only really affects Sanic Land for now (the ten mile long troll level) because it has spikes at the top. I moved character controls to its own script so I don't have to copy paste the control code for every character. This means that making new characters will be negligably faster since I don't have to paste and edit spaghetti messes of code for each one anymore. More importantly, it will allow me to make AI players that control their characters the same way humans do, effectively. I plan for AI players to be in a future version, like 12 or 13 hopefully. I've also fixed a bunch of bugs, like Sad Sword getting stuck on the back of the Aeroplane when doing his Air Normal kick attack. He also can't camp inside the colliders of levels anymore (though Snowy Summit still needs a little more tweaking). There were also bad problems with the camera being stupid, grab meters not showing or behaving properly, and the game just ending if someone didn't load fast enough. There will be more detail on these fixes and changes when I finally finish this damn update lol. All I can do right now is assure my friends (the only people reading this site other than me) that there is a SECRET sauce in this update that I'm staying tight-lipped about. You shall see...
Here's the first development update. I'm not sure how regular these will actually be on account of the fact that this game's development doesn't even occur regularly, but here you go. Development has been on and off, but lately I've made some good progress towards Alpha version 11. The 5th character is pretty much complete (unless another sneaky missed detail pops up) and I'm working on some other improvements to the game as well. Just before writing this, I started re-doing the music for the character select screen, and wow does it sound better! Of course, if you haven't played the game, you would have no idea, but it'll sound great, I assure you. Usually, adding a new character would be grounds for me to get all hype and push out the next version so that my friends and I can playtest the new character as soon as possible. This time, however, I will be taking more time than I usually do to work on this version and make it more than an incremental change. For now, details are secret. See you next update.


User Experience Researcher and Interaction Designer
¿Where's your I?
¡Hello...
...and welcome to my website! My name is Richard Caballero. I'm a User Experience Researcher and Interaction Designer. I studied Cognitive Science and Human Computer Interaction at the University of California at San Diego. I love watching people and learning how our minds work. I spent the last year working as project manager at the Interactive Cognition Lab headed by Professor David Kirsh. During my time there I worked on several projects that involved Theory of Interaction, Environment Design, and Information Architecture.
Contact
To get in touch please send me an email or follow me on twitter. You can check out some of my work and current projects on github.
Looking for my resume? Check it out here!


|
AceTime
2.3.0
Date and time classes for Arduino that support timezones from the TZ Database.
|
An entry in ZoneInfo which describes which ZonePolicy was being followed during a particular time period. More...
#include <ZoneInfoHigh.h>
Public Attributes | |
| const ZonePolicy< S > *const | zonePolicy |
| Zone policy, determined by the RULES column. More... | |
| const char *const | format |
| Zone abbreviations (e.g. More... | |
| int16_t const | offsetCode |
| UTC offset in 15-second increments. More... | |
| uint8_t const | offsetRemainder |
| The remainder seconds from offsetCode. | |
| int8_t const | deltaMinutes |
| If zonePolicy is nullptr, this is the DST offset in minutes as defined by the RULES column in 'hh:mm' format. More... | |
| int16_t const | untilYear |
| Era is valid until currentTime < untilYear. More... | |
| uint8_t const | untilMonth |
| The month field in UNTIL (1-12). More... | |
| uint8_t const | untilDay |
| The day field in UNTIL (1-31). More... | |
| uint16_t const | untilTimeCode |
| The time field of UNTIL field in 15-second increments. More... | |
| uint8_t const | untilTimeModifier |
| The untilTimeModifier is a packed field containing 2 pieces of info: More... | |
An entry in ZoneInfo which describes which ZonePolicy was being followed during a particular time period.
Corresponds to one line of the ZONE record in the TZ Database file ending with an UNTIL field. The ZonePolicy is determined by the RULES column in the TZ Database file.
There are 2 types of ZoneEra: 1) zonePolicy == nullptr. Then deltaCode determines the additional offset from offsetCode. A value of '-' in the TZ Database file is stored as 0. 2) zonePolicy != nullptr. Then the deltaCode offset is given by the ZoneRule.deltaCode which matches the time instant of interest.
Definition at line 187 of file ZoneInfoHigh.h.
| int8_t const ace_time::zoneinfohigh::ZoneEra< S >::deltaMinutes |
If zonePolicy is nullptr, this is the DST offset in minutes as defined by the RULES column in 'hh:mm' format.
An 8-bit integer can handle DST offsets of [-128,127] minutes which allows it to handle DST offsets of [-02:00,02:00].
Definition at line 236 of file ZoneInfoHigh.h.
| const char* const ace_time::zoneinfohigh::ZoneEra< S >::format |
Zone abbreviations (e.g.
PST, EST) determined by the FORMAT column. It has 3 encodings in the TZ DB files:
1) A fixed string, e.g. "GMT". 2) Two strings separated by a '/', e.g. "-03/-02" indicating "{std}/{dst}" options. 3) A single string with a substitution, e.g. "E%sT", where the "%s" is replaced by the LETTER value from the ZoneRule.
BasicZoneProcessor supports only a single letter subsitution from LETTER, but ExtendedZoneProcessor supports substituting multi-character strings (e.g. "CAT", "DD", "+00").
The TZ DB files use 's' to indicate the substitution, but for simplicity, AceTime replaces the "%s" with just a '' character with no loss of functionality. This also makes the string-replacement code a little simpler. For example, 'EsT' is stored as 'ET', and the LETTER substitution is performed on the '' character.
This field will never be a 'nullptr' if it was derived from an actual entry from the TZ dtabase. There is an internal object named ExtendedZoneProcessor::kAnchorEra
which does set this field to nullptr. Maybe it should be set to ""?
Definition at line 219 of file ZoneInfoHigh.h.
| int16_t const ace_time::zoneinfohigh::ZoneEra< S >::offsetCode |
UTC offset in 15-second increments.
Determined by the STDOFF column. The remainder goes into the offsetsRemainder field.
Definition at line 225 of file ZoneInfoHigh.h.
| uint8_t const ace_time::zoneinfohigh::ZoneEra< S >::untilDay |
The day field in UNTIL (1-31).
Will never be 0. Also, there's no need for untilDayOfWeek, because the database generator will resolve the exact day of month based on the known year and month.
Definition at line 251 of file ZoneInfoHigh.h.
| uint8_t const ace_time::zoneinfohigh::ZoneEra< S >::untilMonth |
| uint16_t const ace_time::zoneinfohigh::ZoneEra< S >::untilTimeCode |
The time field of UNTIL field in 15-second increments.
A range is [0,6000] corresponds to [0h,25h].
Definition at line 257 of file ZoneInfoHigh.h.
| uint8_t const ace_time::zoneinfohigh::ZoneEra< S >::untilTimeModifier |
The untilTimeModifier is a packed field containing 2 pieces of info:
Definition at line 269 of file ZoneInfoHigh.h.
| int16_t const ace_time::zoneinfohigh::ZoneEra< S >::untilYear |
Era is valid until currentTime < untilYear.
Comes from the UNTIL column.
Definition at line 241 of file ZoneInfoHigh.h.
| const ZonePolicy<S>* const ace_time::zoneinfohigh::ZoneEra< S >::zonePolicy |
Zone policy, determined by the RULES column.
Set to nullptr if the RULES column is '-' or an explicit DST shift in the form of 'hh:mm'.
Definition at line 192 of file ZoneInfoHigh.h.


public interface TokenControl
Offers methods to control the parsing process by the handler.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Disable the handling of all types of comments.void
disableComments
(int type) Disable the handling of comments of the given type.void
Enable the handling of all types of comments.void
enableComments
(int type) Enable the handling of comments of the given type.void
setAcceptEofEndingQuoted
(boolean accept) If set, quoted strings ending with an EOF (End Of File). are processed through the relevantquoted
method, albeit an error is reported in any case.void
setAcceptNewlineEndingQuote
(boolean accept) If set, quoted strings ending with an unescaped newline (instead of the closing quote) are processed through the relevantquoted
method, albeit an error is reported in any case.
-
Method Details
-
enableAllComments
void enableAllComments()Enable the handling of all types of comments. -
setAcceptNewlineEndingQuote
void setAcceptNewlineEndingQuote(boolean accept) If set, quoted strings ending with an unescaped newline (instead of the closing quote) are processed through the relevantquoted
method, albeit an error is reported in any case. Otherwise, only the error is reported.It is set to
false
by default.- Parameters:
accept
- true to process quoted strings that ends with an unescaped newline, false otherwise.
-
setAcceptEofEndingQuoted
void setAcceptEofEndingQuoted(boolean accept) If set, quoted strings ending with an EOF (End Of File). are processed through the relevantquoted
method, albeit an error is reported in any case. Otherwise, only the error is reported.It is set to
false
by default.- Parameters:
accept
- true to process quoted strings that ends with an EOF,false
otherwise.
-
disableAllComments
void disableAllComments()Disable the handling of all types of comments. -
enableComments
void enableComments(int type) Enable the handling of comments of the given type.- Parameters:
type
- the type of comment to enable. If the type does not exist, implementations may or may not throw an exception, depending on the intended coupling with theTokenHandler
.
-
disableComments
void disableComments(int type) Disable the handling of comments of the given type.- Parameters:
type
- the type of comment to disable. If the type does not exist, implementations may or may not throw an exception, depending on the intended coupling with theTokenHandler
.
-


I have always loved Computers and it seemed only natural to study Computer Engineering when I graduated high school. I have also challenged myself even further by completeing a minor in Chinese while attending Southern Methodist University. There is nothing I enjoy more and I hope to someday apply what I have learned in the field wherever I may go!
Studied abroad at Beijing Normal University(北师大) for 2 Months in order to intensively study the Chinese language and culture.
I Collaborated with a team of 5 engineers to effectively produce a working design for a robot. My job was to help build the sensors for the robot to test water for salinity and turbidity.
I also used Java in order to collect data from the various sensors and told the robot how to interpret it.
Worked on Mongo DB/Splunk and used SQL and NOSQL databases in order to better organize large amounts of data that we had collected.
Built sensors with Tanium using shell script to test various endpoints on hundreds of Linux and Windows based virtual machines. I then took that raw data and exported it to excel sheets. Afterwards, I proceeded to write several visual basic programs to better organize the random data produced by the sensors.
Trained the 7 members on my team on how to use a new tool from CITI to better organize their workflow. This tool was eventually fully adopted and allowed our team to be more transparent and efficient.
Competed with a team of engineers against 800 other students in a 24 hour competition designed to see who could create the best product.
While at Hack DFW, I worked with a team of engineers with the goal of bulding an app that communicated with a Ilumi light to produce certain colors based on the current weather.
As a result, our team placed in 5th overall for best product.
I also personally built a product that could sense when the temperature got too hot or too cold outside and would alert the user by letting out a warning sound. The purpose of this was to help prevent heat exhaustion for kids who play sports outside. The device could let the coaches know if conditions were too extreme allowing them to either move practice indoors or let the kids have a water break. The results would allow the coaches to push their player while preventing injury.
I was given the opportunity to return for a second internship at CITI where I created a Jython program that pulled data from our Database Automation log files. After I completed this step, the program then takes the data and generates a dynamic HTML web page that shows the overall status of our Database Automation Platform. It also informs the user if there are any issues and will help them pinpoint the exact cause of the problem. Finally, the program will insert and index the data into a MongoDB database in order to have a record of all past status reports.
I completed M101P(MongoDB for Developers - Python) and M102P(Mongo for DBAS) which are courses offered by MongoDB and covers topics like CRUD, schema design, indexing, aggregation framework, replication, scalability, and backup and recovery.
Sales Engineering Intern for the Summer of 2016.


Export filterAn export filter is evaluated during the export phase.The column values are replaced by the result of the expression when the export file is written. ${old-value} is a synonym for the filtered column. With the filter EMPLOYEE.NAME := lower(${old-value}) ... the names of the employees are exported with lowercase letters: Literal filterA literal filter is also evaluated during the export phase.The result is written literally to the export file. In the import phase, it is evaluated as an SQL expression. To define a literal filter, add the prefix "literal:" to the filter expression. The filter: replaces employee names with numbers from a sequence in the target database. Import filterAn import filter is evaluated during the import phase.Import filters are especially useful for filtering primary key columns. Filters on primary key columns are automatically applied to the corresponding foreign key columns. An import filter ensures that a "null" value remains null and that a foreign key value maps to the same value as the primary key, even if the filter expression is not a deterministic function. (More precisely, if the filter expressions and types of any two filters are exactly the same for two different columns, then both filters will map each value to exactly the same target value.) This filter uses a sequence to generate new EMPNOs during the import phase: Filter templatesTemplates allow defining filters of the same kind for a set of columns that satisfy a given condition. |


Alertmanager
Send alerts
Manage Silence
The split between Prometheus and alertmanager makes the services more simple


avahi-daemon
Section: Maintenance Commands (8)Updated: User
Index Return to Main Contents
NAME
avahi-daemon - The Avahi mDNS/DNS-SD daemonSYNOPSIS
avahi-daemon [options]avahi-daemon --kill
avahi-daemon --reload
DESCRIPTION
The Avahi mDNS/DNS-SD daemon implements Apple's Zeroconf architecture (also known as "Rendezvous" or "Bonjour"). The daemon registers local IP addresses and static services using mDNS/DNS-SD and provides two IPC APIs for local programs to make use of the mDNS record cache the avahi-daemon maintains. First there is the so called "simple protocol" which is used exclusively by avahi-dnsconfd (a daemon which configures unicast DNS servers using server info published via mDNS) and nss-mdns (a libc NSS plugin, providing name resolution via mDNS). Finally there is the D-Bus interface which provides a rich object oriented interface to D-Bus enabled applications.Upon startup avahi-daemon interprets its configuration file /etc/avahi/avahi-daemon.conf and reads XML fragments from /etc/avahi/services/*.service which may define static DNS-SD services. If you enable publish-resolv-conf-dns-servers in avahi-daemon.conf the file /etc/resolv.conf will be read, too.
OPTIONS
- -f | --file= FILE
- Specify the configuration file to read. (default: /etc/avahi/avahi-daemon.conf)
- -D | --daemonize
- Daemonize after startup. Implies --syslog.
- -s | --syslog
- Log to syslog instead of STDERR. Implied by --daemonize.
- --debug
- Increase verbosity to debug level.
- --no-rlimits
- Don't enforce resource limits as specified in the configuration file. (See setrlimit(2) for more information)
- --no-drop-root
- Don't drop root priviliges after startup and don't require daemon to be started as root. We recommend not to use this option.
- --no-chroot
- Don't chroot(2) the daemon. This option is only available when compiled with chroot() support.
- --no-proc-title
- Don't change the process name while running. Unless this option is specified avahi-daemon will reflect its current state and the selected host name in the process title.
- -k | --kill
- Kill an already running avahi-daemon. (equivalent to sending a SIGTERM)
- -r | --reload
- Tell an already running avahi-daemon to reread /etc/resolv.conf (in case you enabled publish-resolv-conf-dns-servers in avahi-daemon.conf) the files from /etc/avahi/services/. Please note that this will not reload the /etc/avahi/avahi-daemon.conf. (equivalent to sending a SIGHUP)
- -c | --check
- Return 0 as return code when avahi-daemon is already running.
- -h | --help
- Show help
- -v | --version
- Show version information
FILES
/etc/avahi/avahi-daemon.conf: the default configuration file for avahi-daemon, avahi-daemon.conf(5) for more information./etc/avahi/hosts: additional static hostname mappings to publish in mDNS, see avahi.hosts(5) for more information.
/etc/avahi/services/*.service: static service definitions, see avahi.service(5) for more information.
SIGNALS
SIGINT, SIGTERM, SIGQUIT: avahi-daemon will shutdown. (Same as --kill).SIGHUP: avahi-daemon will reload unicast DNS server data from /etc/resolv.conf and static service definitions from /etc/avahi/services/. (Same as --reload)
SIGUSR1: avahi-daemon will dump local and remote cached resource record data to syslog.
AUTHORS
The Avahi Developers <avahi (at) lists (dot) freedesktop (dot) org>; Avahi is available from http://avahi.org/SEE ALSO
avahi-daemon.conf(5), avahi.hosts(5), avahi.service(5), avahi-dnsconfd(8), avahi-set-host-name(1)http://avahi.org/wiki/AvahiAndUnicastDotLocal documents the problems when using Avahi in a unicast DNS zone .local.
COMMENTS
This man page was written using xml2man(1) by Oliver Kurth.
Index
This document was created by man2html, using the manual pages.
Time: 05:34:24 GMT, December 24, 2015


AKComputedParameter
public protocol AKComputedParameter: AKParameter
A computed parameter differs from a regular parameter in that it only exists within an operation (unlike float, doubles, and ints which have a value outside of an operation)
-
pitchShift(semitones:)
Extension methodThis will digitally degrade a signal.
Declaration
Swift
public func pitchShift(semitones: AKParameter = 0) -> AKOperation
Parameters
bitDepth
The bit depth of signal output. Typically in range (1-24). Non-integer values are OK. (Default: 8, Minimum: 1, Maximum: 24)
sampleRate
The sample rate of signal output. (Default: 10000, Minimum: 0.0, Maximum: 20000.0)
-
reverberateWithChowning()
Extension methodThis is was built using the JC reverb implentation found in FAUST. According to the source code, the specifications for this implementation were found on an old SAIL DART backup tape. This class is derived from the CLM JCRev function, which is based on the use of networks of simple allpass and comb delay filters. This class implements three series allpass units, followed by four parallel comb filters, and two decorrelation delay lines in parallel at the output.
Declaration
Swift
public func reverberateWithChowning() -> AKOperation
-
stringResonator(frequency:feedback:)
Extension methodA modal resonance filter used for modal synthesis. Plucked and bell sounds can be created using passing an impulse through a combination of modal filters.
Declaration
Swift
public func stringResonator( frequency: AKParameter = 100.0, feedback: AKParameter = 0.95 ) -> AKOperation
Parameters
frequency
Fundamental frequency of the filter. (Default: 100.0, Minimum: 12.0, Maximum: 20000.0)
feedback
Feedback gain. A value close to 1 creates a slower decay and a more pronounced resonance. Small values may leave the input signal unaffected. Depending on the filter frequency, typical values are > .9. Default 0.95
-
Distortion using a modified hyperbolic tangent function.
Declaration
Swift
public func distort( pregain: AKParameter = 2.0, postgain: AKParameter = 0.5, postiveShapeParameter: AKParameter = 0.0, negativeShapeParameter: AKParameter = 0.0 ) -> AKOperation
Parameters
pregain
Determines the amount of gain applied to the signal before waveshaping. A value of 1 gives slight distortion. (Default: 2.0, Minimum: 0.0, Maximum: 10.0)
postgain
Gain applied after waveshaping (Default: 0.5, Minimum: 0.0, Maximum: 10.0)
postiveShapeParameter
Shape of the positive part of the signal. A value of 0 gets a flat clip. (Default: 0.0, Minimum: -10.0, Maximum: 10.0)
negativeShapeParameter
Like the positive shape parameter, only for the negative part. (Default: 0.0, Minimum: -10.0, Maximum: 10.0)
-
resonantFilter(frequency:bandwidth:)
Extension methodA second-order resonant filter.
Declaration
Swift
public func resonantFilter( frequency: AKParameter = 4_000.0, bandwidth: AKParameter = 1_000.0 ) -> AKOperation
Parameters
frequency
The center frequency of the filter, or frequency position of the peak response (defaults to 4000 Hz).
bandwidth
The bandwidth of the filter (the Hz difference between the upper and lower half-power points (defaults to 1000 Hz).
-
variableDelay(time:feedback:maximumDelayTime:)
Extension methodA delay line with cubic interpolation.
Declaration
Swift
public func variableDelay( time: AKParameter = 1.0, feedback: AKParameter = 0.0, maximumDelayTime: Double = 5.0 ) -> AKOperation
Parameters
time
Delay time (in seconds) that can be changed during performance. This value must not exceed the maximum delay time. (Default: 1.0, Minimum: 0.0, Maximum: 10.0)
feedback
Feedback amount. Should be a value between 0-1. (Default: 0.0, Minimum: 0.0, Maximum: 1.0)
maximumDelayTime
The maximum delay time, in seconds. (Default: 5.0, Minimum: 0.0, Maximum: 10.0)
-
lowPassButterworthFilter(cutoffFrequency:)
Extension methodThese filters are Butterworth second-order IIR filters. They offer an almost flat passband and very good precision and stopband attenuation.
Declaration
Swift
public func lowPassButterworthFilter( cutoffFrequency: AKParameter = 1_000 ) -> AKOperation
Parameters
cutoffFrequency
Cutoff frequency. (in Hertz) (Default: 1000, Minimum: 12.0, Maximum: 20000.0)
-
reverberateWithCombFilter(reverbDuration:loopDuration:)
Extension methodThis filter reiterates input with an echo density determined by loopDuration. The attenuation rate is independent and is determined by reverbDuration, the reverberation duration (defined as the time in seconds for a signal to decay to 1/1000, or 60dB down from its original amplitude). Output from a comb filter will appear only after loopDuration seconds.
Declaration
Swift
public func reverberateWithCombFilter( reverbDuration: AKParameter = 1.0, loopDuration: AKParameter = 0.1 ) -> AKOperation
Parameters
reverbDuration
The time in seconds for a signal to decay to 1/1000, or 60dB from its original amplitude. (aka RT-60). (Default: 1.0, Minimum: 0.0, Maximum: 10.0)
loopDuration
The loop time of the filter, in seconds. This can also be thought of as the delay time. Determines frequency response curve, loopDuration * sr/2 peaks spaced evenly between 0 and sr/2. (Default: 0.1, Minimum: 0.0, Maximum: 1.0)
-
clip(_:)
Extension methodClips a signal to a predefined limit, in a
soft
manner.Declaration
Swift
public func clip(_ limit: AKParameter = 1.0) -> AKOperation
Parameters
limit
Threshold / limiting value. (Default: 1.0, Minimum: 0.0, Maximum: 1.0)
-
trackedAmplitude(_:)
Extension methodPanner
Declaration
Swift
public func trackedAmplitude(_ trackedAmplitude: AKParameter = 0) -> AKOperation
Parameters
input
Input audio signal
-
smoothDelay(time:samples:feedback:maximumDelayTime:)
Extension methodSmooth variable delay line without varispeed pitch.
Declaration
Swift
public func smoothDelay( time: AKParameter = 1.0, samples: AKParameter = 1_024, feedback: AKParameter = 0.0, maximumDelayTime: Double = 5.0 ) -> AKOperation
Parameters
time
Delay time (in seconds) that can be changed during performance. This value must not exceed the maximum delay time. (Default: 1.0, Minimum: 0.0, Maximum: 10.0)
samplesls
Interpolation samples
feedback
Feedback amount. Should be a value between 0-1. (Default: 0.0, Minimum: 0.0, Maximum: 1.0)
maximumDelayTime
The maximum delay time, in seconds. (Default: 5.0, Minimum: 0.0, Maximum: 10.0)
-
moogLadderFilter(cutoffFrequency:resonance:)
Extension methodMoog Ladder is an new digital implementation of the Moog ladder filter based on the work of Antti Huovilainen, described in the paper
Non-Linear Digital Implementation of the Moog Ladder Filter
(Proceedings of DaFX04, Univ of Napoli). This implementation is probably a more accurate digital representation of the original analogue filter.Declaration
Swift
public func moogLadderFilter( cutoffFrequency: AKParameter = 1_000, resonance: AKParameter = 0.5 ) -> AKOperation
Parameters
cutoffFrequency
Filter cutoff frequency. (Default: 1000, Minimum: 12.0, Maximum: 20000.0)
resonance
Resonance, generally < 1, but not limited to it. Higher than 1 resonance values might cause aliasing, analogue synths generally allow resonances to be above 1. (Default: 0.5, Minimum: 0.0, Maximum: 2.0)
-
pan(_:)
Extension methodPanner
Declaration
Swift
public func pan(_ pan: AKParameter = 0) -> AKStereoOperation
Parameters
input
Input audio signal
pan
Panning. A value of -1 is hard left, and a value of 1 is hard right, and 0 is center. (Default: 0, Minimum: -1, Maximum: 1)
-
korgLowPassFilter(cutoffFrequency:resonance:saturation:)
Extension methodAnalogue model of the Korg 35 Lowpass Filter
Declaration
Swift
public func korgLowPassFilter( cutoffFrequency: AKParameter = 1_000.0, resonance: AKParameter = 1.0, saturation: AKParameter = 0.0 ) -> AKOperation
Parameters
input
Input audio signal
cutoffFrequency
Filter cutoff (Default: 1000.0, Minimum: 0.0, Maximum: 22050.0)
resonance
Filter resonance (should be between 0-2) (Default: 1.0, Minimum: 0.0, Maximum: 2.0)
saturation
Filter saturation. (Default: 0.0, Minimum: 0.0, Maximum: 10.0)
Return Value
AKOperation
-
reverberateWithCostello(feedback:cutoffFrequency:)
Extension method8 delay line stereo FDN reverb, with feedback matrix based upon physical modeling scattering junction of 8 lossless waveguides of equal characteristic impedance.
Declaration
Swift
public func reverberateWithCostello( feedback: AKParameter = 0.6, cutoffFrequency: AKParameter = 4_000 ) -> AKStereoOperation
Parameters
feedback
Feedback level in the range 0 to 1. 0.6 gives a good small ‘live’ room sound, 0.8 a small hall, and 0.9 a large hall. A setting of exactly 1 means infinite length, while higher values will make the opcode unstable. (Default: 0.6, Minimum: 0.0, Maximum: 1.0)
cutoffFrequency
Low-pass cutoff frequency. (Default: 4000, Minimum: 12.0, Maximum: 20000.0)
-
highPassButterworthFilter(cutoffFrequency:)
Extension methodThese filters are Butterworth second-order IIR filters. They offer an almost flat passband and very good precision and stopband attenuation.
Declaration
Swift
public func highPassButterworthFilter( cutoffFrequency: AKParameter = 500 ) -> AKComputedParameter
Parameters
cutoffFrequency
Cutoff frequency. (in Hertz) (Default: 500, Minimum: 12.0, Maximum: 20000.0)
-
highPassFilter(halfPowerPoint:)
Extension methodA complement to the AKLowPassFilter.
Declaration
Swift
public func highPassFilter( halfPowerPoint: AKParameter = 1_000 ) -> AKOperation
Parameters
halfPowerPoint
Half-Power Point in Hertz. Half power is defined as peak power / square root of 2. (Default: 1000, Minimum: 12.0, Maximum: 20000.0)
-
dcBlock()
Extension methodImplements the DC blocking filter Y[i] = X[i] - X[i-1] + (igain * Y[i-1]) Based on work by Perry Cook.
Declaration
Swift
public func dcBlock() -> AKOperation
Parameters
input
Input audio signal
-
threePoleLowPassFilter(distortion:cutoffFrequency:resonance:)
Extension method3-pole (18 db/oct slope) Low-Pass filter with resonance and tanh distortion.
Declaration
Swift
public func threePoleLowPassFilter( distortion: AKParameter = 0.5, cutoffFrequency: AKParameter = 1_500, resonance: AKParameter = 0.5 ) -> AKOperation
Parameters
input
Input audio signal
distortion
Distortion amount. Zero gives a clean output. Greater than zero adds tanh distortion controlled by the filter parameters, in such a way that both low cutoff and high resonance increase the distortion amount. (Default: 0.5, Minimum: 0.0, Maximum: 2.0)
cutoffFrequency
Filter cutoff frequency in Hertz. (Default: 1500, Minimum: 12.0, Maximum: 20000.0)
resonance
Resonance. Usually a value in the range 0-1. A value of 1.0 will self oscillate at the cutoff frequency. Values slightly greater than 1 are possible for more sustained oscillation and an “overdrive” effect. (Default: 0.5, Minimum: 0.0, Maximum: 2.0)
-
delay(time:feedback:)
Extension methodAdd a delay to an incoming signal with optional feedback.
Declaration
Swift
public func delay( time: Double = 1.0, feedback: AKParameter = 0.0 ) -> AKOperation
Parameters
time
Delay time, in seconds. (Default: 1.0, Minimum: 0.0, Maximum: 10.0)
feedback
Feedback amount. (Default: 0.0, Minimum: 0.0, Maximum: 1.0)
-
bitCrush(bitDepth:sampleRate:)
Extension methodThis will digitally degrade a signal.
Declaration
Swift
public func bitCrush( bitDepth: AKParameter = 8, sampleRate: AKParameter = 10_000 ) -> AKOperation
Parameters
bitDepth
The bit depth of signal output. Typically in range (1-24). Non-integer values are OK. (Default: 8, Minimum: 1, Maximum: 24)
sampleRate
The sample rate of signal output. (Default: 10000, Minimum: 0.0, Maximum: 20000.0)
-
reverberateWithFlatFrequencyResponse(reverbDuration:loopDuration:)
Extension methodThis filter reiterates the input with an echo density determined by loop time. The attenuation rate is independent and is determined by the reverberation time (defined as the time in seconds for a signal to decay to 1/1000, or 60dB down from its original amplitude). Output will begin to appear immediately.
Declaration
Swift
public func reverberateWithFlatFrequencyResponse( reverbDuration: AKParameter = 0.5, loopDuration: Double = 0.1 ) -> AKOperation
Parameters
reverbDuration
The duration in seconds for a signal to decay to 1/1000, or 60dB down from its original amplitude. (Default: 0.5, Minimum: 0, Maximum: 10)
loopDuration
The loop duration of the filter, in seconds. This can also be thought of as the delay time or “echo density” of the reverberation. (Default: 0.1, Minimum: 0, Maximum: 1)
-
autoWah(wah:amplitude:)
Extension methodAn automatic wah effect, ported from Guitarix via Faust.
Declaration
Swift
public func autoWah( wah: AKParameter = 0, amplitude: AKParameter = 0.1 ) -> AKOperation
Parameters
wah
Wah Amount (Default: 0, Minimum: 0, Maximum: 1)
amplitude
Overall level (Default: 0.1, Minimum: 0, Maximum: 1)
-
lowPassFilter(halfPowerPoint:)
Extension methodA first-order recursive low-pass filter with variable frequency response.
Declaration
Swift
public func lowPassFilter( halfPowerPoint: AKParameter = 1_000 ) -> AKOperation
Parameters
halfPowerPoint
The response curve’s half-power point, in Hertz. Half power is defined as peak power / root 2. (Default: 1000, Minimum: 12.0, Maximum: 20000.0)
-
modalResonanceFilter(frequency:qualityFactor:)
Extension methodA modal resonance filter used for modal synthesis. Plucked and bell sounds can be created using passing an impulse through a combination of modal filters.
Declaration
Swift
public func modalResonanceFilter( frequency: AKParameter = 500.0, qualityFactor: AKParameter = 50.0 ) -> AKOperation
Parameters
frequency
Resonant frequency of the filter. (Default: 500.0, Minimum: 12.0, Maximum: 20000.0)
qualityFactor
Quality factor of the filter. Roughly equal to Q/frequency. (Default: 50.0, Minimum: 0.0, Maximum: 100.0)


Chapter 20 Text Mining Software Engineering Data
In software engineering, there is a lot of information in plain text such as requirements, bug reports, mails, reviews from applicatons, etc. Typically that information can be extracted from Software Configuration Management Systems (SCM), Bug Tracking Systems (BTS) such as Bugzilla or application stores such as Google Play or Apple’s AppStore, etc. can be mined to extract relevant information. Here we briefly explain the text mining process and how this can be done with R.
The main package for text mining is tm
(Feinerer and Hornik 2015,@FeinererHM08). Another popular package is wordcloud
.
20.1 Terminology
The workflow that we follow for analyzing a set of text documents are:
- Importing data. A Corpus is a collection of text documents, implemented as VCorpus (corpora are R object held in memory). The
tm
provides several corpus constructors:DirSource
,VectorSource
, orDataframeSource
(getSources()
).
There are several parameters that control the creation of a Corpus. ((The parameter readerControl of the corpus constructor has to be a list with the named components reader and language))
Preprocessing: in this step we may remove common words, punctuation and we may perform other operations. We may do this operations after creating the DocumentTermMatrix.
Inspecting and exploring data: Individual documents can be accessed via [[
- Transformations: Transformations are done via the
tm_map()
function. +tm_map(_____, stripWhitespace)
+tm_map(_____, content_transformer(tolower))
+tm_map(_____, removeWords, stopwords("english"))
+tm_map(_____, stemDocument)
Creating
Term-Document
Matrices: TermDocumentMatrix and DocumentTermMatrix + A document term matrix is a matrix with documents as the rows and terms as the columns. Each cell of the matrix contains the count of the frequency of words. We use DocumentTermMatrix() to create the matrix. +inspect(DocumentTermMatrix( newsreuters, list(dictionary = c("term1", "term2", "term3"))))
. It displays detailed information on a corpus or a term-document matrix.Relationships between terms. +
findFreqTerms(_____, anumber)
+findAssocs(Mydtm, "aterm", anumbercorrelation)
+ A dictionary is a (multi-)set of strings. It is often used to denote relevant terms in text mining.Clustering and Classification
20.2 Example of classifying bugs from Bugzilla
Bugzilla is Issue Tracking System that allow us to follow the evolution of a project.
The following example shows how to work with entries from Bugzilla. It is assumed that the data has been extracted and we have the records in a flat file (this can be done using Web crawlers or directly using the SQL database).
library(foreign)
# path_name <- file.path("C:", "datasets", "textMining")
# path_name
# dir(path_name)
#Import data
options(stringsAsFactors = FALSE)
d <- read.arff("./datasets/textMining/reviewsBugs.arff" )
str(d) #print out information about d
## 'data.frame': 789 obs. of 2 variables:
## $ revContent: chr "Can't see traffic colors now With latest updates I can't see the traffic green/red/yellow - I have to pull over"| __truncated__ "Google Map I like it so far, it has not steered me wrong." "Could be 100X better Google should start listening to customers then they'd actually build a proper product." "I like that! Easily more helpful than the map app that comes with your phone." ...
## $ revBug : Factor w/ 2 levels "N","Y": 2 1 1 1 1 1 2 1 2 1 ...
head(d,2) # the first two rows of d.
## revContent
## 1 Can't see traffic colors now With latest updates I can't see the traffic green/red/yellow - I have to pull over and zoom in the map so that one road fills the entire screen. Traffic checks are (were) the only reason I use google maps!
## 2 Google Map I like it so far, it has not steered me wrong.
## revBug
## 1 Y
## 2 N
# fifth entry
d$revContent[5]
## [1] "Just deleted No I don't want to sign in or sign up for anything stop asking"
d$revBug[5]
## [1] N
## Levels: N Y
Creating a Document-Term Matrix (DTM)
Now, we can explore things such as “which words are associated with”feature“?”
# which words are associated with "bug"?
findAssocs(dtm, 'bug', .3) # minimum correlation of 0.3. Change accordingly.
## $bug
## it? mini major users causing ipad
## 1.00 0.92 0.91 0.80 0.62 0.57
And find frequent terms.
findFreqTerms(dtm, 15) #terms that appear 15 or more times, in this case
## [1] "google" "map" "like" "app" "just"
## [6] "good" "crashes" "maps" "time" "get"
## [11] "much" "really" "update" "great" "nice"
## [16] "best" "ever" "fun" "review" "love"
## [21] "awesome" "cool" "amazing" "game" "clans"
## [26] "clash" "game." "game!" "addicting" "play"
## [31] "playing" "addictive"
Remove some terms
sparseparam <- 0.90 # will make the matrix 90% empty space, maximum. Change this, as you like.
dtm_sprs <- removeSparseTerms(dtm,sparse=sparseparam)
inspect(dtm_sprs)
## <<DocumentTermMatrix (documents: 789, terms: 9)>>
## Non-/sparse entries: 1233/5868
## Sparsity : 83%
## Maximal term length: 7
## Weighting : term frequency - inverse document frequency (normalized) (tf-idf)
## Sample :
## Terms
## Docs app awesome best clash fun game good great
## 159 0 0.000000000 0 1.598808368 0 0 0.000000000 0
## 163 0 3.116086850 0 0.000000000 0 0 0.000000000 0
## 178 0 3.116086850 0 0.000000000 0 0 0.000000000 0
## 400 0 0.000000000 0 0.000000000 0 0 3.100319534 0
## 421 0 0.000000000 0 0.000000000 0 0 3.100319534 0
## 472 0 0.000000000 0 0.000000000 0 0 3.100319534 0
## 50 0 0.000000000 0 0.000000000 0 0 3.100319534 0
## 525 0 1.558043425 0 0.000000000 0 0 0.000000000 0
## 527 0 0.000000000 0 0.000000000 0 0 3.100319534 0
## 532 0 0.000000000 0 1.598808368 0 0 0.000000000 0
## Terms
## Docs love
## 159 1.461720886
## 163 0.000000000
## 178 0.000000000
## 400 0.000000000
## 421 0.000000000
## 472 0.000000000
## 50 0.000000000
## 525 1.461720886
## 527 0.000000000
## 532 1.461720886
maintitle <-paste0("Most frequent terms (sparseness=" ,sparseparam , " )")
barplot(as.matrix(dtm_sprs),xlab="terms",ylab="number of occurrences", main=maintitle)
# organize terms by their frequency
freq_dtm_sprs <- colSums(as.matrix(dtm_sprs))
length(freq_dtm_sprs)
## [1] 9
sorted_freq_dtm_sprs <- sort(freq_dtm_sprs, decreasing = TRUE)
sorted_freq_dtm_sprs
## good great game awesome fun best
## 77.76636458 68.77637155 68.66996351 64.60649534 55.84940440 54.07372345
## love clash app
## 45.36493131 42.48777519 31.29319954
Create a data frame that will be the input to the classifier. Last column will be the label.
As data frame:
#dtmdf <- as.data.frame(dtm.90)
#dtmdf <- as.data.frame(inspect(dtm_sprs))
dtmdf <- as.data.frame(as.matrix(dtm_sprs))
# rownames(dtm)<- 1:nrow(dtm)
class <- d$revBug
dtmdf <- cbind(dtmdf,class)
head(dtmdf, 3)
Use any classifier now: - split the dataframe into training and testing - Build the classification model using the training subset - apply the model to the testing subset and obtain the Confusion Matrix - Analise the results
library(caret)
library(randomForest)
inTraining <- createDataPartition(dtmdf$class, p = .75, list = FALSE)
training <- dtmdf[ inTraining,]
testing <- dtmdf[-inTraining,]
fitControl <- trainControl(## 5-fold CV
method = "repeatedcv",
number = 5,
## repeated ten times
repeats = 5)
gbmFit1 <- train(class ~ ., data = training,
method = "gbm",
trControl = fitControl,
## This last option is actually one
## for gbm() that passes through
verbose = FALSE)
gbmFit1
## Stochastic Gradient Boosting
##
## 593 samples
## 9 predictors
## 2 classes: 'N', 'Y'
##
## No pre-processing
## Resampling: Cross-Validated (5 fold, repeated 5 times)
## Summary of sample sizes: 475, 474, 475, 474, 474, 474, ...
## Resampling results across tuning parameters:
##
## interaction.depth n.trees Accuracy Kappa
## 1 50 0.7983107819 0.005187831537
## 1 100 0.8030309073 0.100972529170
## 1 150 0.8185586099 0.251719781992
## 2 50 0.8161942743 0.214069621088
## 2 100 0.8162028201 0.281341413948
## 2 150 0.8114798462 0.280302861433
## 3 50 0.8168636946 0.274826252003
## 3 100 0.8114883920 0.279902522189
## 3 150 0.8087850734 0.282684783972
##
## Tuning parameter 'shrinkage' was held constant at a value of 0.1
##
## Tuning parameter 'n.minobsinnode' was held constant at a value of 10
## Accuracy was used to select the optimal model using the largest value.
## The final values used for the model were n.trees = 150,
## interaction.depth = 1, shrinkage = 0.1 and n.minobsinnode = 10.
# trellis.par.set(caretTheme())
# plot(gbmFit1)
#
# trellis.par.set(caretTheme())
# plot(gbmFit1, metric = "Kappa")
head(predict(gbmFit1, testing, type = "prob"))
## N Y
## 1 0.6128782934 0.38712170665
## 2 0.5754602498 0.42453975017
## 3 0.6422679898 0.35773201018
## 4 0.6866949197 0.31330508027
## 5 0.9802477705 0.01975222952
## 6 0.9307476992 0.06925230082
conf_mat <- confusionMatrix(testing$class, predict(gbmFit1, testing))
conf_mat
## Confusion Matrix and Statistics
##
## Reference
## Prediction N Y
## N 152 5
## Y 35 4
##
## Accuracy : 0.7959184
## 95% CI : (0.7326392, 0.8500172)
## No Information Rate : 0.9540816
## P-Value [Acc > NIR] : 1
##
## Kappa : 0.0994716
## Mcnemar's Test P-Value : 0.000004533294
##
## Sensitivity : 0.8128342
## Specificity : 0.4444444
## Pos Pred Value : 0.9681529
## Neg Pred Value : 0.1025641
## Prevalence : 0.9540816
## Detection Rate : 0.7755102
## Detection Prevalence : 0.8010204
## Balanced Accuracy : 0.6286393
##
## 'Positive' Class : N
##
We may compute manually all derived variables from the Confusion Matrix. See Section – with the description of the Confusion Matrix
# str(conf_mat)
TruePositive <- conf_mat$table[1,1]
TruePositive
## [1] 152
FalsePositive <- conf_mat$table[1,2]
FalsePositive
## [1] 5
FalseNegative <- conf_mat$table[2,1]
FalseNegative
## [1] 35
TrueNegative <- conf_mat$table[2,2]
TrueNegative
## [1] 4
# Sum columns in the confusion matrix
ConditionPositive <- TruePositive + FalseNegative
ConditionNegative <- FalsePositive + TrueNegative
TotalPopulation <- ConditionPositive + ConditionNegative
TotalPopulation
## [1] 196
#Sum rows in the confusion matrix
PredictedPositive <- TruePositive + FalsePositive
PredictedNegative <- FalseNegative + TrueNegative
# Total Predicted must be equal to the total population
PredictedPositive+PredictedNegative
## [1] 196
SensitivityRecall_TPR <- TruePositive / ConditionPositive
SensitivityRecall_TPR
## [1] 0.8128342246
Specificity_TNR_SPC <- TrueNegative / ConditionNegative
Specificity_TNR_SPC
## [1] 0.4444444444
Precision_PPV <- TruePositive / PredictedPositive
Precision_PPV
## [1] 0.9681528662
NegativePredictedValue_NPV <- TrueNegative / PredictedNegative
NegativePredictedValue_NPV
## [1] 0.1025641026
Prevalence <- ConditionPositive / TotalPopulation
Prevalence
## [1] 0.9540816327
Accuracy_ACC <- (TruePositive + TrueNegative) / TotalPopulation
Accuracy_ACC
## [1] 0.7959183673
FalseDiscoveryRate_FDR <- FalsePositive / PredictedPositive
FalseDiscoveryRate_FDR
## [1] 0.03184713376
FalseOmisionRate_FOR <- FalseNegative / PredictedNegative
FalseOmisionRate_FOR
## [1] 0.8974358974
FallOut_FPR <- FalsePositive / ConditionNegative
FallOut_FPR
## [1] 0.5555555556
MissRate_FNR <- FalseNegative / ConditionPositive
MissRate_FNR
## [1] 0.1871657754
And finally, a word cloud as an example that appears everywhere these days.
library(wordcloud)
# calculate the frequency of words and sort in descending order.
wordFreqs=sort(colSums(as.matrix(dtm_sprs)),decreasing=TRUE)
wordcloud(words=names(wordFreqs),freq=wordFreqs)
20.3 Extracting data from Twitter
The hardest bit is to link with Twitter. Using the TwitteR package is explained following this example.
References
Feinerer, Ingo, and Kurt Hornik. 2015. Tm: Text Mining Package. http://CRAN.R-project.org/package=tm.