Stub Indexes
Stub Trees
A stub tree is a subset of the PSI tree for a file; it is stored in a compact serialized binary format. The PSI tree for a file can be backed either by the AST (built by parsing the text of the file) or by the stub tree deserialized from disk. Switching between the two is transparent.
The stub tree contains only a subset of the nodes. Typically it contains only the nodes that are needed to resolve the declarations contained in this file from external files. Trying to access any node which is not part of the stub tree, or to perform any operation which cannot be satisfied by the stub tree, e.g. accessing the text of a PSI element, causes file parsing and switches the PSI to AST backing.
Each stub in the stub tree is simply a bean class with no behavior. A stub stores a subset of the state of the corresponding PSI element, like element’s name, modifier flags like public or final, etc. The stub also holds a pointer to its parent in the tree and a list of its children stubs.
To support stubs for your custom language, you first need to decide which of the elements of your PSI tree should be stored as stubs. Typically you need to have stubs for things like methods or fields, which are visible from other files. You usually don’t need to have stubs for things like statements or local variables, which are not visible externally.
For each element type that you want to store in the stub tree, you need to perform the following steps:
- Define an interface for the stub, derived from the
StubElement
interface (example). - Provide an implementation for the interface (example).
- Make sure that the interface for the PSI element extends
StubBasedPsiElement
parameterized by the type of the stub interface (example). - Make sure that the implementation class for the PSI element extends
StubBasedPsiElementBase
parameterized by the type of the stub interface (example). Provide both a constructor that accepts anASTNode
and a constructor which accepts a stub. - Create a class which implements
IStubElementType
and is parameterized with the stub interface and the actual PSI element interface (example). Implement thecreatePsi()
andcreateStub()
methods for creating PSI from a stub and vice versa. Implement theserialize()
anddeserialize()
methods for storing the data in a binary stream. - Use the class implementing
IStubElementType
as the element type constant when parsing (example). - Make sure that all methods in the PSI element interface access the stub data rather than the PSI tree when appropriate (example: Property.getKey() implementation).
The following steps need to be performed only once for each language that supports stubs:
- Change the file element type for your language (the element type that you return from
ParserDefinition.getFileNodeType()
) to a class that extendsIStubFileElementType
. - In your
plugin.xml
, define the<stubElementTypeHolder>
extension and specify the interface which contains theIElementType
constants used by your language’s parser (example).
For serializing string data, e.g. element names, in stubs, we recommend to use StubOutputStream.writeName()
and StubInputStream.readName()
methods. These methods ensure that each unique identifier is stored only once in the data stream. This reduces the size of the serialized stub tree data.
If you need to change the stored binary format for the stubs (for example, if you want to store some additional data or some new elements), make sure that you advance the stub version returned from IStubFileElementType.getStubVersion()
for your language. This will cause the stubs and stub indices to be rebuilt, and will avoid mismatches between the stored data format and the code trying to load it.
By default, if a PSI element extends StubBasedPsiElement
, all elements of that type will be stored in the stub tree. If you need more precise control over which elements are stored, override IStubElementType.shouldCreateStub()
and return false
for elements which should not be included in the stub tree.
It’s essential to make sure that all information stored in the stub tree depends only on the contents of the file for which stubs are being built, and does not depend on any external files. Otherwise the stub tree will not be rebuilt when an external dependency changes, and you will have stale and incorrect data in the stub tree.
Stub indexes
When building the stub tree, you can at the same time put some data about the stub elements into a number of indexes, which then can be used to find the PSI elements by the corresponding key. Unlike file-based indexes, stub indexes do not support storing custom data as values; the value is always a PSI element. Keys in stub indexes are normally strings (such as class names); other data types are also supported if desired.
A stub index is a class which extends AbstractStubIndex
. In the most common case, when the key type is String
, you use a more specific base class, namely StringStubIndexExtension. Stub index implementation classes are registered in the <stubIndex>
extension point.
To put data into an index, you implement the method IStubElementType.indexStub()
(example: JavaClassElementType.indexStub()). This method accepts an IndexSink
as a parameter, and puts in the index ID and the key for each index in which the element should be stored.
To access the data from an index, the following two methods are used:
AbstractStubIndex.getAllKeys()
returns the list of all keys in the specified index for the specified project (for example, the list of all class names found in the project).AbstractStubIndex.get()
returns the collection of PSI elements corresponding to a certain key (for example, classes with the specified short name) in the specified scope.


Create new database
To create a new database assure to have the rights to access to the remote server with the privilege "database.create". if you've not defined
any Server's users just use 'root'.
When prompted, provide the OrientDB Server's credentials: for example 'root' as user and the automatic generated password created under
the OrientDB installation directory, in the file "config/orient-server-config.xml".
By default new databases always have 3 users:
- "reader", with password "reader", can read standard records from database
- "writer", with password "writer", can create, read, update and delete records
- "admin", with password "admin", is God: can make anything against the database
. Remember to change default password right after tge database is created. For more information look at the Security page.
|


Some modest insights into the error surface of Neural Nets
30 Jul 2017Did you know that feedforward Neural Nets (with piecewise linear transfer functions) have no smooth local maxima?
In our recent ICML paper Practical Gauss-Newton Optimisation for Deep Learning) we discuss a second order method that can be applied successfully to accelerate training of Neural Networks. However, here I want to discuss some of the fairly straightforward, but perhaps interesting, insights into the geometry of the error surface that that work gives.
Feedforward Neural Networks
In our description, a feedforward NN takes an input vector and produces a vector on the final layer. We write to be the vector of pre-activation values for layer and to denote the vector of activation values after passing through the transfer function .
Starting with setting to the input , a feedforward NN is defined by the recursion
where is the weight matrix of layer (we use a sub or superscript wherever most convenient) and the activation vector is given by
We define a loss between the final output layer and a desired training output . For example, we might use a squared loss
where the loss is summed over all elements of the vector. For a training dataset the total error function is the summed loss over individual training points
where represents the stacked vector of all parameters of the network. For simplicity we will write for the error for a single generic datapoint.
The Gradient
For training a NN, a key quantity is the gradient of the error
We use this for example in gradient descent training algorithms. An important issue is how to compute the gradient efficiently. Thanks to the layered structure of the network, it’s intuitive that there is an efficient scheme (backprop which is a special case of Reverse Mode AutoDiff) that propagates information from layer to layer.
The Hessian
One aspect of the structure of the error surface is the local curvature, defined by the Hessian matrix with elements
The Hessian matrix itself is typically very large. To make this more manageable, we’ll focus here on the Hessian of the parameters of a given layer . That is
The Hessians then form the diagonal block matrices of the full Hessian .
A recursion for the Hessian
Similar to the gradient, it’s perhaps intuitive that a recursion exists to calculate this layerwise Hessian. Starting from
and differentiating again we obtain
where we define the pre-activation Hessian for layer as
We show in Practical Gauss-Newton Optimisation for Deep Learning that one can derive a simple backwards recursion for this pre-activation Hessian (the recursion is for a single datapoint – the total Hessian is a sum over the individual datapoint Hessians):
where we define the diagonal matrices
and
Here is the first derivative of the transfer function and is the second derivative.
The recursion is initialised with which depends on the objective and is easily calculated for the usual loss functions. For example, for the square loss we have , namely the identity matrix. We use this recursion in our paper to build an approximate Gauss-Newton optimisation method.
Consequences
Piecewise linear transfer functions, such as the ReLU are currently popular due to both their speed of evaluation (compared to more traditional transfer functions such as ) and also the empirical observation that, under gradient based training, they tend to get trapped less often in local optima. Note that if the transfer functions are piecewise linear, this does not necessarily mean that the objective will be piecewise linear (since the loss is usually itself not piecewise linear).
For a piecewise linear transfer function, apart from the `nodes’ where the linear sections meet, the function is differentiable and has zero second derivative, . This means that the matrices in the above Hessian recursion will be zero (away from nodes).
For many common loss functions, such as squared loss (for regression) and cross entropy loss (for classification) the Hessian is Positive Semi-Definite (PSD).
Note that, according to \eqref{eq:recursion}, for transfer functions that contain zero gradient points then the Hessian can have lower rank than , reducing the curvature information propagating back from layers close to the output towards layers closer to the input. This has the effect of creating flat plateaus in the surface and makes gradient based training potentially more problematic. Conversely, provided the gradient of the transfer function is never zero , then according to \eqref{eq:recursion} each layer pre-activation Hessian is Positive Definite, helping preserve the propagation of surface curvature back through the network.
Structure within a layer
For such loss functions, it follows that the pre-activation Hessian for all layers is PSD as well (away from nodes). It immediately follows from \eqref{eq:H} that the Hessian for each layer is PSD. This means that, if we fix all the parameters of the network, and vary only the parameters in a layer , then the objective can exhibit no smooth local maxima or smooth saddle points. Note that this does not imply that the objective is convex everywhere with respect to as the surface will contain ridges corresponding to the non-differentiable nodes.
No differentiable local maxima
The trace of the full Hessian is the sum of the traces of each of the layerwise blocks . Since (as usual away from nodes) by the above argument each matrix is PSD, it follows that the trace of the full Hessian is non-negative. This means that it is not possible for all eigenvalues of the Hessian to be simultaneously negative, with the immediate consequence that feedforward networks (with piecewise linear transfer functions) have no differentiable local maxima. The picture below illustrates the kind of situtation therefore that can happen in terms of local maxima (test):
whereas the image below depicts the kind of smooth local maxima that cannot happen:
Visualisation for a simple two layer net
We consider a simple network with two layers, ReLU transfer functions and square loss error. The network thus has two weight matrices and . Below we choose two fixed matrices and and parameterise the weight matrix as a function of two scalars and , so that . As we vary and we then plot the objective function , keeping all other parameters of the network fixed.
As we can see the surface contains no local differentiable local maxima as we vary the parameters in the layer.
Below we show an analogous plot for varying the parameters of the second layer weights , which has the same predicted property that there are no differentiable local maxima.
Finally, below we plot using and , showing how the objective function changes as we simultaneously change the parameters in different layers. As we can see, there are no differentiable maxima.
Summary
A simple consequence of using piecewise linear transfer functions and a convex loss, is that feedforward networks cannot have any differentiable maxima (or saddle points) as parameters are varied within a layer. Furthermore, the objective cannot contain any differentiable maxima, even as we vary parameters across layers. Note that the objective though can (and empirically does) have smooth saddle points as one varies parameters and across different layers.
It’s unclear how practically significant these modest insights are. However, they do potentially partially support the use of piecewise linear transfer functions (particularly those with no zero gradient regions) since for such transfer functions gradient based training algorithms cannot easily dawdle on local maxima (anywhere), or idle around saddle points (within a layer) since such regions correspond to sharp slopes in the objective.
These results are part of a more detailed study of second order methods for optimisation in feedforward Neural Nets which will appear in ICML 2017.


My name is Naeem Rind and I am a Front-End Web Developer based in Quetta. I received my Bachelor’s Degree in Electrical Engineering in 2013 from BUETK. I am passionate about programming, particularly Web Development and Web Design. My hobbies include walks in the countryside and Nature Photography. Besides Web Development, I have a good command on Adobe products and UI Designing. Currently I am polishing up on my Front-End Dev skills + Responsive Web Design. My Current Skills are below.
Wanna get in touch and know more? Feel free to contact me via email at:
naeem.bsc@gmail.com


Mark device repaired
Are you sure you want to mark this device {{deviceId}} as no longer being damaged? You should only do this if you have confirmed that the device's reported damage has been fixed.
Device {{deviceId}} is no longer marked as damaged.


--- layout: post title: Are you the BozBoz? date: 2006-05-31 00:00:00 category: personal ---
Don't put all your eggs in one basket! Boz Kay provides 3 services. (erm... 4 actually).
Go Boswell!


Morphling
Tips
- Use Waveform to travel between and damage two jungle camps at the same time.
- Waveform can be used to absorb certain projectiles headfirst since you are invincible during the
spell.
- When using Waveform to push the lane, move near the ranged creep in the enemy wave and Waveform in
towards your creeps or into trees. You make yourself vulnerable to ganks if you Waveform deeper into
enemy territory.
- You can toggle Morph STR/AGI while stunned/disabled (not during a Silence, though).
- Replicate has a surprisingly high cast range. Use this not only to make Replicas of enemies from far away
during team fights, but as a gap closer during ganks (create a Replica, immediately take its position,
you are now in your target) or as an escape when getting ganked.
- When using a Replica to escape, treat it like an Illusory Orb. Let your hero walk in one direction and
let the Replica go the opposite direction. Doesn't matter which one the enemies commit to, you're gold
ponyboy.
- If you're farming the jungle and you've got nothing better to do, micro your Replicate. Besides letting
it get last hits for you, you can try sending it into enemy territory to bait out some ultimates.
- Replicas deal 80% damage.  Find the highest damage dealer in the map and Replicate them for a team fight. Replicas also take
100% damage. A 100% HP Centaur takes an eternity to kill. If the highest damage dealer in the map is
also someone who gets iced out in moments (i.e. Clinkz), then try to go for the tankiest.
- Other good targets for Replication are heroes who have good passives or auras which carry over to
illusions: Axe for Counter Helix, Phantom Lancer for your own personal PL army, Spectre for Desolate,
Riki for Permanent Invisibility, and heroes who have a Radiance.
 With STR Morph, he can usually gain HP before you can
burn him down with auto attacks.
- You can see how much time Morphling has left on a Replicate illusion by checking his buff timer. Time your
ganks when it's about to end.
- Be wary of committing fully to out of position heroes when there's a Morphling on the enemy team. It's
highly likely that it's a Replicate.
- If Morph went E-Blade, he's probably roaming around with low strength, making him a prime candidate for
a good old fashioned Nyxing. Good Nyxers include: Nyx, Nyx, Nyx, Io+Anyone, Nyx, and Dagon 5 +
Sheepstick Tinker or Furion.


no options
non-grouped
non-grouped, filter hidden
non-grouped with disabled options
non-grouped with distinct option labels
grouped, with open on focus
input picker


{% extends "base.html" %} {% from "layout/pagination.html" import footer_pagination with context %} {% block page_title %}Book a timeslot | {{ entry.title }} | {% endblock %} {% block content %}
Book a timeslot from the list below so that you can meet our judges and tell them about the progress on your project, {{ entry.title }}.
Please note that once you've booked a slot you can't cancel it so make sure you can make the time
| Date | Timeslot duration | Options |
|---|---|---|
| {{ object.start_date.strftime('%B %d, %Y') }} | {{ object.start_date.strftime('%H:%M') }} to {{ object.end_date.strftime('%H:%M') }} | {% if object.is_booked %} Timeslot booked {% else %} | {% endif %}
If you can't make any of the availiable timeslots, or if you really do want to cancel a booking that you have made please email us, we're happy to help.
{{ footer_pagination(page) }} {% endblock content%}


Ex-mayor faces sentence
by Citizen staff / Prince George CitizenA B.C. Supreme Court sentencing hearing for former Burns Lake Mayor Luke Strimbold on sexual assault charges will be held Tuesday in Smithers.
In May, Strimbold pleaded guilty to four counts of sexual assault involving four boys who were under the age of 16. A pre-sentencing report and a psychological assessment were ordered.
A special prosecutor had previously approved 29 charges against Strimbold, including sexual interference and invitation to sexual touching, that were alleged to have involved six people who were all under the age of 16 at the time.
An indictment shows the assaults he pleaded guilty to occurred between May 2014 and August 2017.
In 2011, he became British Columbia's youngest elected mayor when he was elected in Burns Lake, west of Prince George. In September 2016 and part way through his second term, he resigned and in March 2018, Burns Lake RCMP confirmed he had been charged with numerous counts of sexual assault and related offences.
The hearing was first set for Sept. 23 but postponed to this week.


[gecode-users] HOwto setup Gecode in MAC
Guido Tack
tack at ps.uni-sb.de
Tue May 13 08:33:44 CEST 2008
Debdeep Banerjee wrote:
> hi,
> I am trying to setup Gecode in MAC. I have found the include files,
> but
> where are the libraries ??
Do you mean Mac OS? Did you use the dmg package we provide? It
installs a Mac OS Framework (read about it in the Apple developer
documentation), and all the libraries are linked together into one
library, called gecode. In order to compile and link against the
framework, you just have to give the option "-framework gecode" when
linking, the header files are found automatically.
Cheers,
Guido
More information about the gecode-users
mailing list


Page 4 of 8
Posted:
Fri Feb 09, 2007 12:25 pm
by thadiusofx3
That's all for right now, I gotta go look for a part-time job lol
Getting paid by the project just isn't working right now.
I'll make some more when I get back.
Posted:
Fri Feb 09, 2007 2:16 pm
by Karl G.
Wow awesome!! Those are great.
The only problem I'm having so far is that I use back-face culling to remove vertices that are away from the camera, and not all of the faces are wound correctly. I can fix this by hand, though, so it shouldn't be too big of an issue. It's just a bit of a chore.
*An example of this: the top rim of the hp/mp pool has its normals facing downward, so when I render it the top rim goes away if you're looking from above.
Posted:
Fri Feb 09, 2007 2:24 pm
by Karl G.
By the way--tombstone2 doesn't load correctly.
Another example of the invisible thing:
The bottom of the blue column is covered correctly (it's black and filled in)
The bottom of the stone column is invisible, and lets you see up inside the column
Posted:
Fri Feb 09, 2007 3:04 pm
by thadiusofx3
I removed the bottom of the stone column to lower the number of faces.
Should it be a problem since it's the bottom?
Also when I looked at the log in blender I saw that one model didn't export correctly, but I didnt know which one, so I get that was the tombstone2.
The same thing that happened to the mp pool shouldn't happen to anything else, I just made that one in a weird way.
try this hp pool and see if it works right
http://poorserver.no-ip.org/ProjectVolu ... phppool2.x
Posted:
Fri Feb 09, 2007 3:16 pm
by thadiusofx3
Try tombstone2 again now, I think I fixed it.
Apparently I had a plane in there with 0 vertices somehow, but whatever.
Posted:
Fri Feb 09, 2007 3:25 pm
by thadiusofx3
Arch looks pretty good if I don't say so myself
Posted:
Fri Feb 09, 2007 3:35 pm
by thadiusofx3
Sign (obviously)
Posted:
Fri Feb 09, 2007 3:47 pm
by thadiusofx3
fence_connector
fence_link
Posted:
Fri Feb 09, 2007 6:23 pm
by Ender
damn thad, you are a 3d modeling fiend!
Posted:
Fri Feb 09, 2007 6:27 pm
by Karl G.
Those look great, Thad!
The mphp pool 2 doesn't load at all. I looked inside the file and the normals had a bunch of "-1.#IND00" values in there...dunno what that meant
Posted:
Fri Feb 09, 2007 6:30 pm
by Karl G.
All of the newest models work perfectly!
Thadius, could you change the fence_connector and fence_link models so that they don't have caps on the ends? They'll always be connected to something else so it's not necessary to have them.
Posted:
Fri Feb 09, 2007 9:29 pm
by thadiusofx3
yeah i can definitely change those quickly, but I'll have to do it in a few hours, bout to watch a movie
and the tombstone2 that didn't load the first time, It had the -1.#IND00 things in it too
I noticed them and thought that looked weird.
Posted:
Sat Feb 10, 2007 12:27 am
by thadiusofx3
Ok fixed and reuploaded the fence models
Do I need to do something to the mp pool or can you use the old one and just fix the normals?
Posted:
Sat Feb 10, 2007 12:51 am
by thadiusofx3
small and large ladders:
Posted:
Sat Feb 10, 2007 1:15 am
by thadiusofx3
wall section and endpiece
Posted:
Sat Feb 10, 2007 1:26 am
by thadiusofx3
20 down... 63+ to go
wall_section_pointy
Posted:
Sat Feb 10, 2007 2:01 am
by thadiusofx3
stairs up and down
I couldn't find the wall texture for the stairs_down wall in the texture pack so i put that one there for a temp replacement
Posted:
Sat Feb 10, 2007 2:11 am
by thadiusofx3
ok I'm done for tonight, more to follow tomorrow
Posted:
Sat Feb 10, 2007 11:12 am
by Karl G.
The back side of wall_section and wall_section_pointy seem not to exist...O.o
The stairs are perfect!
I'd like you to see if you can fix the hpmp pool, because that way in the future you'll know what makes the model work correctly. Basically, the edges need to "face" upward, instead of downward. For example, in the stairs down model, the sides of the stairs are both directed inward exactly like they're supposed to be. Use this program to view the files for reference:
http://www.unseenstudios.com/volucris/d ... Viewer.exe
Posted:
Sat Feb 10, 2007 11:22 am
by thadiusofx3
I know what I did wrong with it. When i was "forming it" I did some weird stuff with it, and originally the lip of the pool was on the inside of the structure, but I flipped it over and put it on the outside, and I guess it made the normals face down instead of up.
I'll see what I can do as soon as I'm finished with this wagon.
Posted:
Sat Feb 10, 2007 11:23 am
by thadiusofx3
Lol I had directx viewer from the directx SDK, but It never worked, always gave me an unhandled exception error when I tried to load it.
This one works though.
Posted:
Sat Feb 10, 2007 11:51 am
by thadiusofx3
Ok wagon is done but I'm not gonna post a picture case blender was being weird and wasn't showing some textures in the render (they are actually there, I made sure in the directx viewer)
I'll get started on fixing mp pool
Posted:
Sat Feb 10, 2007 12:16 pm
by thadiusofx3
well I had to completely redo the mana pool cause I couldn't see any practical way to fix it
here's the new one: (ignore the white, it's only in the blender render, not in the actual model)
Posted:
Sat Feb 10, 2007 12:43 pm
by thadiusofx3
I've just got one more model to do in the structures folder of the map maker concepts, 4obelisk_spike, which is probably the hardest one in that category.
Any categories/models that anyone would want me to complete first?
well
Posted:
Sat Feb 10, 2007 12:45 pm
by logitech
lookin good!


The Dev Bootcamp Onsite Experience: Part 1
October 26, 2015
“Long days, short weeks.” Four words (not my own) that summarize the Dev Bootcamp onsite experience. While there was a certain amount of ebb and flow during the nine weeks, I can confidently say I learned much more than if I had just spent the nine weeks teaching myself. Plus, I made a bunch of new friends.
While I’m not allowed to get too much into the specifics of the curriculum due to its proprietary nature, I do believe I’m permitted to talk about it from a more abstract perspective. The nine weeks of the program are broken into thematic three-week phases, with each threshold between chunks serving as a waypoint toward jumping off into new topics that become progressively more reminiscent of actual professional web development as it’s currently practiced in industry.
Looking back through my hastily scrawled notes on the experience and my completed exercises, I feel that each three-week segment can be further divided into three smaller constituent parts. Or, in much similar terms, each week had its own individual theme, which I’ll summarize briefly below.
Week 1 – Algorithms
I would hazard a guess that when the average guy on the street thinks of programming, he envisions something like what we did during the first week. Lots of logic puzzles, lots of mathy stuff, lots of little games involving words and numbers. As I’ve mentioned previously, I’ve always been a big fan of games and puzzles (and math for that matter), so this week was right up my alley. But not everyone possesses this proclivity, so there was a high level of stress among the cohort in part due to the challenging material and in part due to the many late nights (and long weekends). Then again, one would expect a “bootcamp” to start off in a strenuous manner, so the material this week was certainly fitting!
Also of note, this was the week when I first experienced a phenomenon I like to call code churn, that is, when you wake up multiple times in the middle of the night to jot down thoughts you have on how to improve upon the code you wrote earlier in the day (or ideas about how to solve the problem you couldn’t quite finish the day before). This was not the only week at Dev Bootcamp during which I experienced code churn.
Week 2 – Design Principles and Data Parsing
Perhaps the most interesting thing about this week to me was that it elicited an intriguing conversation about concreteness vs abstractness. Many in the cohort expressed relief that this week felt “less abstract” than the previous one, which personally struck me as very odd because I’m definitely in the Descartes camp—after one’s own thoughts, there is perhaps nothing more concrete in this world than mathematical truths. If anything, this week, when we dove into the design principles widely adopted by programmers, felt more theoretical and abstract to me. But I digress.
From what I’ve heard about Dev Bootcamp’s ever-changing curriculum, our cohort was one of the first to explore Object-Oriented Design during Phase 0, which may or may not have had life-altering consequences on my coding style. As such, much of the material was review, and it definitely made more sense when encountering it the second time around. We were also introduced to the most prevalent design pattern used in web development, Model - View - Controller (MVC). Ruby on Rails leverages this pattern, and it also exists in about a million different flavors of JavaScript. But what was (relatively) new and most exciting for me was learning how to parse and extract data from different file types and even web pages, which has even more practical uses than there are MVC JavaScript frameworks.
Week 3 – Databases
Databases aren’t very sexy. But they are ubiquitous. And therefore immensely important.
This week was all about databases, well, except for the assessment which wasn’t an assessment because that’s a word that puts undue pressure on people to perform but was nevertheless an assessment even if you don’t want to call it that. I like databases. They really appeal to my desire for order and organization, and it’s always fun to draw lines from one thing to another (in order to represent relationships between database tables) as this evokes pleasant memories from early childhood. In fact, the very positive experience I had designing a database application to better organize student data and streamline office procedures in a previous job was one of the things that led me into diving headfirst into software development.
All the same, I think talking about learning about databases in an engaging fashion is beyond even my powers. Instead I’ll quote one of my instructors who said that his favorite programming language was SQL (i.e. the database language) because “it’s the purest programming language of them all.” Earlier in the program, this same instructor also gave us the gem, “Everything that can be done by iteration can also be done by recursion and vice versa,” which was a really eye-opening statement, albeit one that you, the reader, probably won’t understand unless you have prior programming experience. But trust me when I say that those are two gnomic gems.
* * * * *
This concludes Part 1 of this massive blog post. Jump to Part 2 or Part 3.


resource fsockopen ( string $hostname [, int $port = -1 [, int &$errno [, string &$errstr [, float $timeout = ini_get("default_socket_timeout") ]]]] )
Initiates a socket connection to the resource specified by hostname. PHP supports targets in the Internet and Unix domains as described in List of Supported Socket Transports. A list of supported transports can also be retrieved using stream_get_transports(). The socket will by default be opened in blocking mode. You can switch it to non-blocking mode by using stream_set_blocking().
fsockopen() returns a file pointer which may be used together with the other file functions (such as fgets(), fgetss(), fwrite(), fclose(), and feof()). If the call fails, it will return FALSE


Welcome to JayBites, a fully fledged restaurant specializing in delivering a relaxed and memorable pizza experience. We’re currently in 12 locations; 3 in Nairobi, 8 in Kampala and 1 in Entebbe. Each location features a unique ambience with tasteful décor, specially designed for your comfort. To make you feel more at home, we’ve carefully selected a unique theme for each location. We have over 20 carefully selected, mouthwatering pizza menu items. Whatever your taste, it’s well catered for. We value you. That’s why you’ll always be served with excellence by each member of our highly skilled team members. Eager to serve you, our experienced wait staff greet you at the door and lead you to the table of your choice in the well thought out seating arrangement. To ensure you always enjoy a special pizza experience, we constantly improve our signature world-class innovations. We’re growing and may soon open a location closer to you. We look forward to serving you, You’re more than welcome to Find us here.
We Jaybites innovate our recipes to be as perfect as you would like.
We create after innovating by chefs getting to the kitchen and bringing the best of arts you'd like.
We deliver best services, which leaves a happy face in clients. and who doesn't want to leave the clients satisfied.


Fit, summarize and plot sinusoidal hysteretic processes using: two-step simple harmonic least squares, ellipse-specific non-linear least squares, the direct method, geometric least squares or linear least squares.
| Version: | 2.6 |
| Depends: | car, msm, MASS |
| Suggests: | knitr |
| Published: | 2017-12-13 |
| Author: | Spencer Maynes, Fan Yang, and Anne Parkhurst |
| Maintainer: | Anne Parkhurst <aparkhurst at unl.edu> |
| License: | GPL-2 | GPL-3 [expanded from: GPL (≥ 2)] |
| NeedsCompilation: | no |
| Materials: | README NEWS |
| CRAN checks: | hysteresis results |
| Reference manual: | hysteresis.pdf |
| Vignettes: |
An Introduction to the hysteresis package |
| Package source: | hysteresis_2.6.tar.gz |
| Windows binaries: | r-devel: hysteresis_2.6.zip, r-release: hysteresis_2.6.zip, r-oldrel: hysteresis_2.6.zip |
| OS X binaries: | r-release: hysteresis_2.6.tgz, r-oldrel: hysteresis_2.6.tgz |
| Old sources: | hysteresis archive |
Please use the canonical form https://CRAN.R-project.org/package=hysteresis to link to this page.


image effect:
exposure:
shutter:
white balance:
iso:
drc:
brightness:
sharpness:
width:
height:
Cancel
OK
Camera
YouTube Live
Stream Control
Title:
Description:
Privacy:
YouTube Live Event Created
Video ID: {{videoId}}
Watch Url:
http://www.youtube.com/watch?v={{videoId}}
YouTube Live Stream Created
Video ID: {{videoId}}
Watch Url:
http://www.youtube.com/watch?v={{videoId}}
YouTube Live Broadcast Ready. Waiting for stream...
Video ID: {{videoId}}
Watch Url:
http://www.youtube.com/watch?v={{videoId}}
YouTube live stream received. Testing stream...
Video ID: {{videoId}}
Watch Url:
http://www.youtube.com/watch?v={{videoId}}
YouTube streaming testing complete. Preparing to go live...
Video ID: {{videoId}}
Watch Url:
http://www.youtube.com/watch?v={{videoId}}
YouTube is now live streaming.
Video ID: {{videoId}}
Watch Url:
http://www.youtube.com/watch?v={{videoId}}
Video Title: {{videoTitle}}
Description: {{description}}
Privacy Status: {{privacyStatus}}
{{error}}
Pi Camera Server Url:
RTMP Stream Name:
Start Stream
Stop Encoder


Moon phase in timeline Fix wind series break holiday lines using foreignobject Look at getting wind and wave forecasts from the grib2 files / wavewatcherIII Rose fixes, including z-order, update rates Testing: flicker on updates Testing: vary time and date


#include "_doctype.html" #define FLAWNAME Kerberos Authentication Buffer Overflow
| Date: | February 21, 2005 |
| ID | BID 12616 CAN-2005-0490 |
| Affected versions | 7.3 to and including 7.13.0 |
| Not affected versions | 7.13.1 and later |
| Advisories | iDEFENSE's advisory |
Due to bad usage of the base64 decode function to a stack-based buffer without checking the data length, it was possible for a malicious FTP server to overflow the client during krb4 negotiation. I don't know of any single user that uses krb4-ftp and I'm not even sure it still works 100%. The announcement was done without contacting us. #include "_footer.html"


Contributors
FairyGUI Author
Name: 谷主. The author engaged in the game UI development process for many years, well aware of the game developers in the UI development pain point, the lack of easy to use and visual editing tools, resulting in programmers and art coupling too deep; Second, the market is not enough Mature, resulting in secondary development workload is too large, the ability of programmers demanding, and difficult to standardize; third is unable to cope with changing needs. FairyGUI is born in this context, after two years of development and tuning, can be said that the market is best to use the professional game UI editor, and open source free!
FairyGUI Editor is produced using FairyGUI. GitHub has UI tools for all interfaces of the FairyGUI editor. After downloading, you can use the FairyGUI editor to open. You can use this skin to make your own editor, and you can choose AS3, or TS, JS, or C #, the efficiency of the bar!
SDK contribution
The Haxe SDK is provided by Rakuten.
The Pixi SDK is provided by jcyuan.
Website production contribution
喵喵大人，Ou Changkun， Duke Chiang， Blank


CLUB-EQUIPMENT
Ellptical_trainer
An elliptical trainer or cross-trainer (also called an X-trainer) is a stationary exercise machine used to simulate stair climbing, walking, or running without causing excessive pressure to the joints, hence decreasing the risk of impact injuries.
stationary_bicycle
A stationary bicycle (also known as exercise bicycle, exercise bike, or exercycle) is a device with saddle, pedals, and some form of handlebars arranged as on a bicycle, but used as exercise equipment rather than transportation.
Treadmill
A treadmill is a device generally for walking or running while staying in the same place.
Stair_Stepper
Stair stepper machine or an exercise that simulates a step up the ladder . The focus of the thighs, hips and buttocks when compared with other heart device management .


Hi, I'm
Liana Lopes
Graduated in Letters, teacher for almost 11 years, I've been migrating to programming for almost one year. Between this migration I decided to study UX to further complement my knowledge in some points of programming.
Did you got tea or coffe? Yes? So now you are already.
I hope you enjoy my page.


Master de II. ULL. 1er cuatrimestre. 2020/2021
Infer the content-type of a request.
This is a Node.js module available through the
npm registry. Installation is done using the
npm install
command:
1
$ npm install type-is
1
2
3
4
5
6
7
var http = require('http')
var typeis = require('type-is')
http.createServer(function (req, res) {
var istext = typeis(req, ['text/*'])
res.end('you ' + (istext ? 'sent' : 'did not send') + ' me text')
})
Checks if the request
is one of the types
. If the request has no body,
even if there is a Content-Type
header, then null
is returned. If the
Content-Type
header is invalid or does not matches any of the types
, then
false
is returned. Otherwise, a string of the type that matched is returned.
The request
argument is expected to be a Node.js HTTP request. The types
argument is an array of type strings.
Each type in the types
array can be one of the following:
json
. This name will be returned if matched.application/json
.*/*
or */json
or application/*
.
The full mime type will be returned if matched.+json
. This can be combined with a wildcard such as
*/vnd+json
or application/*+json
. The full mime type will be returned
if matched.Some examples to illustrate the inputs and returned value:
1
2
3
4
5
6
7
8
// req.headers.content-type = 'application/json'
typeis(req, ['json']) // => 'json'
typeis(req, ['html', 'json']) // => 'json'
typeis(req, ['application/*']) // => 'application/json'
typeis(req, ['application/json']) // => 'application/json'
typeis(req, ['html']) // => false
Returns a Boolean if the given request
has a body, regardless of the
Content-Type
header.
Having a body has no relation to how large the body is (it may be 0 bytes). This is similar to how file existence works. If a body does exist, then this indicates that there is data to read from the Node.js request stream.
1
2
3
4
5
6
7
if (typeis.hasBody(req)) {
// read the body, since there is one
req.on('data', function (chunk) {
// ...
})
}
Checks if the mediaType
is one of the types
. If the mediaType
is invalid
or does not matches any of the types
, then false
is returned. Otherwise, a
string of the type that matched is returned.
The mediaType
argument is expected to be a
media type string. The types
argument
is an array of type strings.
Each type in the types
array can be one of the following:
json
. This name will be returned if matched.application/json
.*/*
or */json
or application/*
.
The full mime type will be returned if matched.+json
. This can be combined with a wildcard such as
*/vnd+json
or application/*+json
. The full mime type will be returned
if matched.Some examples to illustrate the inputs and returned value:
1
2
3
4
5
6
7
8
var mediaType = 'application/json'
typeis.is(mediaType, ['json']) // => 'json'
typeis.is(mediaType, ['html', 'json']) // => 'json'
typeis.is(mediaType, ['application/*']) // => 'application/json'
typeis.is(mediaType, ['application/json']) // => 'application/json'
typeis.is(mediaType, ['html']) // => false
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
var express = require('express')
var typeis = require('type-is')
var app = express()
app.use(function bodyParser (req, res, next) {
if (!typeis.hasBody(req)) {
return next()
}
switch (typeis(req, ['urlencoded', 'json', 'multipart'])) {
case 'urlencoded':
// parse urlencoded body
throw new Error('implement urlencoded body parsing')
case 'json':
// parse json body
throw new Error('implement json body parsing')
case 'multipart':
// parse multipart body
throw new Error('implement multipart body parsing')
default:
// 415 error code
res.statusCode = 415
res.end()
break
}
})


Realme X50 5G incoming with two selfie cameras
by YordanRealme introduced its first flagship called X2 Pro earlier this year, and it came with the Snapdragon 855+ chipset and plenty of other premium specs. Now, the company is aiming even higher and will introduce the Realme X50 5G very soon, the CMO of the company revealed on Weibo.
The post by Xu Qi Chase also has the outline of a phone, and we can spot two cameras in the upper left corner in what appears to be a punch hole in the display. This means the X50 5G will be not only the first 5G-enabled phone of the brand, but also the first one with a hole in the display.
While the jump from X2 to X50 truly is intriguing, Chase explained the logic behind the name. X stands for the X lineup which is the pioneer series with all the new technology that Realme is implementing, 5 represents the incoming 5G generation of smartphones and 0 is for new beginnings - much like the 5G-enabled future of the mobile phone business.
The Realme X50 5G will work both on standalone and non-standalone 5G networks, which means easier transition and broader coverage of the next-generation connectivity. Realme is yet to reveal more about the smartphone, including any time frame for its launch.


Most important page ever!
Here are the awesome languages we are going to learn.
HTML
CSS
Javascript
Get some!!!!


Published Dec 26, 2020
Fellowship.Ai is a four months long "unpaid" fellowship on various machine learning topics. The program is 100 % remote, and anyone can apply for it. (PS: Keep reading, if you should or not!). You can apply directly by submitting your resume, but if you complete one of the challenges mentioned on the website - you tend to increase your chances for getting to the interviews. The challenges are focused on different machine learning topics such as image segmentation, Natural Language Processing (NLP), One-Shot learning etc.
I applied for the second cohort of 2020 (Sept - Dec '20). I worked on the challenge problem of Image segmentation using a U-net model. You can read more about the project here - Image Matting with U-Net . On submitting the project, I got an interview call within next 2 days. The interview was fairly easily and mostly focused on basic of ML knowledge like F1 score, Confusion matrix, etc. and some intermediate python programming.
The program started with an orientation of all the accepted fellows for the cohort. You are free to choose a project based on your choice. Most of the projects during my term was either done in partnership with other companies such as Levis or GE or very new projects ( you will be the first to contribute to it ). Each project has about 5-6 fellows working on it. There are no mentors as such.
I was initially working on an 'Emotion Detection' project - where based on the video frames you have to classify if the person in the zoom meeting is engaged, non-engaged, animated or distracted. For the first month, we spent collecting the dataset from various internet scrapes. We were also provided with screenshot of internal zoom meeting. But the manual labelling has to be done on our own - which was indeed very boring task. If you are interested in such kind of project, you can start with some of the good dataset provided by kaggle - Eye Gaze Estimation, BIWI Kinect head pose.
I worked on creating a pipeline for the system. The input images were resized to 128x128 pixels.
The input is passed through first stage of the pipeline – where it identifies external entities such as phone, dog etc in the frame. The selected identities helps to understand other objects in the frame. It uses transfer learning method with pre trained model ie. No Learning happens at this stage of the pipeline.
After the first stage, when the identities are identified. The input image is simplified down the pipeline by cropping the face in the frame. Then the cropped portion is sent to the classifier to be classified into 3 classes : Engaged, Non-engaged and Animated.
If other entities are found from the first stage of the pipeline and is classified as non-engaged by the classifier – then it is regarded as Distracted.
- - - -
I was moved to an another project since most of team member expressed interest to work on other projects. Later, I was working on identifying 'Fridge Food Type Detection' . The project sounds easy but is very difficult to model. First, you don't have a good pool of images to generate a high quality dataset. Second, identifying identifying individual food items is a daunting task, since objects are placed so close to each other in a fridge - it is hard to distinguish each of them. Here, our major work was to generate synthetic dataset using Generative Adversarial Networks(GANs). GANs have been pretty good lately is generating real-life like images of human faces. <show some of the results.
But, it turns out they are not so good at generating other objects. Before joining the group, other have already worked on using StyleGAN-2 by NVIDIA to generate synthetic in-domain images. The initial dataset was built using a member's fridge's in-built camera images and web scraping. Now, directly using GANs on the preliminary dataset was not successful since there were not many images. So, instead synthetic images were generated to transform them to in-domain images. To do so, a blender script was used to randomly place 3D-objects such as bottles, veggies etc. in a fridge 3D model(3D scene generation) and jpg images were produced form the front. Reference - Gregor et. al ICCV '19 ().
I implemented a Pix2Pix GAN method to create a mapping of synthetic images(from Blender) to generate in-domain images. Though Pix2Pix GAN is a paired GAN approach and we did not have pair of synthetic and in-domain fridge images. Instead, I created random pairs and fed it to a Pix2Pix GAN. After 200 epochs on about 1200 image pairs, results are still not convincing. You can check out the project here - Pix2Pix GAN.
Meanwhile, I started my Phd in November '20, and due to hectic schedule I had to focus more time to my PhD from December.
But, there are appreciable results using CycleGAN.
why so ? -
cyclic loss of the images might lead to a better mapping.
unpaired approach
You can read the entire paper here: The Usage of CycleGAN for Image Translation to Increase the Size of Fridge Food Types Dataset
There are "mostly" regular reading session, where someone from the fellowship presents a paper which can help to stay updated with current ML research.
You will working on real-world projects with an inter-disciplinary team from around the world.
Also, the fellowship provide an opportunity to regular performers to join them full-time or get a job at one of the partner companies. Did I mention one of my team member got an internship at Nike ML group and few others at Levis.
There are too many meeting. Group meeting, meeting with the co-founder, demos, etc. etc.
The program is UNPAID - which is a bummer. I'd recommend it highly to those who are either looking for a switch in your career or a final year student(who is done with the internship) or like me who has time before starting you higher education to apply for it.
Time Differences: Meetings are at quite unusual time at night for someone in Asia/Pacific region.
Job offers from partner companies are mostly confined to US residents. But there were externships available from the fellowship to fellows everywhere.
Fellowship does provide a platform for those intermediate in their learning curve of Machine Learning. Since, the program is unpaid, all the fellows(I met), were not working elsewhere full-time. So, I think if you are looking to either switch your career in an ML field or final year student(not the internship) - this will be a great opportunity to learn from real-world projects and potentially get job offers.


|
|
|
A+ HP probook 6560b core i3 2nd generation
Ad ID: ng3D5hAMHPajQrM
|
Laptops & PCs |
Yes |
active |
$200
location 44-46 Morningside North Road Edinburgh, Scotland, EH10 4BF
|
Published
|
|
|
|
|
A+ HP probook 6560b core i3 2nd generation
Ad ID: ng3D5hAMHPajQrM
|
Laptops & PCs |
Yes |
active |
$200
location 44-46 Morningside North Road Edinburgh, Scotland, EH10 4BF
|
Published
|
|
|
|
|
A+ HP probook 6560b core i3 2nd generation
Ad ID: ng3D5hAMHPajQrM
|
Laptops & PCs |
Yes |
Inactive
Under Review
|
$200
location 44-46 Morningside North Road Edinburgh, Scotland, EH10 4BF
|
Published
|
|
|
|
|
A+ HP probook 6560b core i3 2nd generation
Ad ID: ng3D5hAMHPajQrM
|
Laptops & PCs |
Yes |
sold |
$200
location 44-46 Morningside North Road Edinburgh, Scotland, EH10 4BF
|
Published
|
|
|
|
|
A+ HP probook 6560b core i3 2nd generation
Ad ID: ng3D5hAMHPajQrM
|
Laptops & PCs |
Yes |
active |
$200
location 44-46 Morningside North Road Edinburgh, Scotland, EH10 4BF
|
Published
|
|
|
|
|
A+ HP probook 6560b core i3 2nd generation
Ad ID: ng3D5hAMHPajQrM
|
Laptops & PCs |
Yes |
sold |
$200
location 44-46 Morningside North Road Edinburgh, Scotland, EH10 4BF
|
Published
|
|
|
|
|
A+ HP probook 6560b core i3 2nd generation
Ad ID: ng3D5hAMHPajQrM
|
Laptops & PCs |
Yes |
expired |
$200
location 44-46 Morningside North Road Edinburgh, Scotland, EH10 4BF
|
Published
|
|
|
|
|
A+ HP probook 6560b core i3 2nd generation
Ad ID: ng3D5hAMHPajQrM
|
Laptops & PCs |
Yes |
Inactive
Under Review
|
$200
location 44-46 Morningside North Road Edinburgh, Scotland, EH10 4BF
|
Published
|
|
|
|
|
A+ HP probook 6560b core i3 2nd generation
Ad ID: ng3D5hAMHPajQrM
|
Laptops & PCs |
Yes |
expired |
$200
location 44-46 Morningside North Road Edinburgh, Scotland, EH10 4BF
|
Published
|
|
|
|
|
A+ HP probook 6560b core i3 2nd generation
Ad ID: ng3D5hAMHPajQrM
|
Laptops & PCs |
Yes |
deleted |
$200
location 44-46 Morningside North Road Edinburgh, Scotland, EH10 4BF
|
Published
|
|


Our resort is surrounded by Caribbean waters on all sides. There are cabana boys for hire as well as kayaks and boats for rent. The resort provides free sunblock which is highly ineffective. The resort does not take responsibility for any skin damage done during your stay. Please see us if you need aloe vera!


You are signed in as {{ user|escape }}.
Your account is currently associated with the following OpenID{{ del_buttons|pluralize }}:
You are currently logged in with the following OpenID{{ add_buttons|pluralize }}. Click "associate" to allow {% ifequal add_buttons.__len__ 1 %}it{% else %}an OpenID{% endifequal %} to be used to sign in to your account.
To associate a new OpenID with this account, sign in with it here:


Index
Challenging Selectors
The buttons below have 'challenging' selectors. Try to find the button and click it.
Select Me By Id


About
Bali box is a monthly subscription box filled with surprise Bali products includig food and non-food to enjoy the gifts of this beautiful Island.
Each box contains 6 to 8 different products such as health food, nutrition elements, organic snacks, natural cosmetics, and hand-made household items.
With the Bali Box we will try to introduce to you this paradise island and show you all its beauty. Subscribe and be surprised every month!
How it works
1. Choose your plan
Choose the best payment method and subscribe.
2. Receive your box
3. Enjoy your Bali experience
Experience the culture and traditions of Bali by discovering the delicious food and artisan products from your box.


Dom's Student Work Portfolio
This is the homepage of Dominic Dowell's CSU East Bay Undergraduate Art Portfolio.
Inside are pages with links and images of my artwork. Enjoy ☘
This is the homepage of Dominic Dowell's CSU East Bay Undergraduate Art Portfolio.
Inside are pages with links and images of my artwork. Enjoy ☘


‘D-Black Bit More Than He Could Chew’- Joey B
by BB JonesRapper Joey B has blamed his friend and colleague D-Back for signing too many artists onto his record label which resulted in a mass exodus.
Rapper and business mogul, D-Black had the likes of Wisa, Dahlin Gage, Freda Rhymz and Koblah Jnr leaving his Black Avenue Muzik citing lack of progress for their decision.
The other artists left are not flourishing and from the look of things, they could all leave sooner than later.
On this note, Joey B believes the avoidable problem started when D-Black decided to sign a lot of artists at the same time.
“I think that’s where he fell short. He should have done it one or two at a time. He did too much with too many artists, unless he had some serious funding from somewhere but Ghana is hard,” he revealed to Nana Adwoa Sarkodie on Citi TV.
“I feel like it’s something he should not have done. I feel he bit more than he could chew. Sometimes you need to take your time
Joey also noted that it appeared D-Black was wasting the artistes’ time.
“What you said you would do and what you promised them you could not do it because you are busy yourself.
He didn’t really interpret what he wanted to do properly. We are all human beings and everyone wants to move nobody wants to be stagnant,” he further stated.


--- layout: page title: 'Health' ---
phone:<PHONE_NUMBER>
fax:<PHONE_NUMBER>
<EMAIL_ADDRESS>Hours
8:30–4:30
Department Head: Jennifer Galarza, Health Official, Registrar of Vital
Statistics
Mary Montoto, Secretary/Deputy Registrar of Vital Statistics
Janet Calhoun and Therese Hoff, Public Health Nurses
We provide mandated public health services to the community.
The Rutherford Health Department is mandated under State Statute as outlined in “Public Health Practice Standards Of Performance For Local Boards Of Health In New Jersey” to provide a public health program to the residents of the Borough of Rutherford. These public health services are comprehensive and designed to promote and to protect the health and safety of our residents.
Under State Statute and outlined in more detail under Chapter 16 of the Borough Code, the Rutherford Board of Health was created on May 17, 1901 and consists of seven members appointed by the Mayor with the advice and consent of the Governing Body and serve three year terms. Said Board possesses all of the powers conferred and perform all the duties enjoined upon local Boards of Health in accordance with NJSA 26:3-1, et seq.


Please fill in this form to create an account.
By creating an account you agree to our Terms and Privacy.


 He is convinced that I am Lord Voldemort and that I took control of the infant Harry Potter on October 31st, 1981, and it is a more than plausible theory. That was essentially Voldemort’s plan, once upon a time, when he had intended to rise to power as David Monroe. From the outside, Hig’s insights are not only a possible interpretation of events, but actually the most likely interpretation.
The truth was
that Voldemort had performed a ritual of ancient and arcane power on a
child, and in the process destroyed his own body and copied much of
his mind into the child’s brain. To an external observer, this
explanation of events requires too many new assumptions to work.
Councilor Hig is simply applying Occam’s Razor, and in the process
revealing one of its disadvantages as a heuristic.
The accusation was
hanging heavy in the air while Harry thought. He didn’t feel
rushed. This wasn’t the first unjust j’accuse he had
faced (and it wouldn’t be the last) and he knew it would actually
be suspicious if he had a ready answer. He had budgeted a half hour
for this meeting -- no need to hurry, yet. He let himself look
astonished, which was easy enough. It was, after all, very
surprising that anyone would stroll into the stronghold of a
villain’s lair and say such a thing.
Reg Hig glared at
Harry. His companion, Limpel Tineagar, had overcome her initial
shock, and was sitting very still and very stiffly, as though she
were surrounded by fragile things.
What advantage
does he think to gain by calling me out?, Harry thought.
We’re in private here, so he’s tipping his hand without getting
any benefit of publicity. I could have him killed without anyone
even knowing what had happened, if I were Voldemort. And if he’s
clever enough to deduce the most probable version of events and to
see a pattern in the charitable contributions, then he’s clever
enough to really have the insurance he claims. On the other hand, he
didn’t reach the correct conclusions about my origins or
about the purpose behind the charities, so he has his limits. What
is his insurance? Well, what are his strengths and patterns? He
specializes in magical information technology, and has built his
power base on that advantage…
Is he working
with the Malfoys? No. Among other reasons, he probably hates them,
given the contrasting beliefs on blood purity, “lesser creatures”
like centaurs, and so on. A letter, left with someone? “If you
are reading this, I am already dead…” No. He has too high an
estimate of my cleverness, given that fantastic speech he just gave,
and he knows how easy it would be for a villain to circumvent that.
Ah. I bet he is
trying to record or broadcast this conversation. Thus the speech and
the goading and the confrontation… he wants a confession from my
own lips. What Dark Lord could ever resist gloating about his plans
in private, after all? A lot of unknowns and moving pieces here,
though… call it 6 to 4, 60% confidence. And if true, that means I must
also increase my estimate of this man’s bravery, since it implies
he is willing to sacrifice himself (suicide bomber? not a violent
man, assign it a small probability). Did his recording device make
it through the Receiving Room? Only one in
twenty magical devices of one sort or another made it through
undetected, based on their prior results... conditional odds would be 5 to 100, then. Hm, multiplying my prior with this I get 30:400, which means that taking the search into account, the probability of him successfully recording this conversation is 30/430… something like seven percent, I think. Call it ten for pessimism.
Not negligible, but not enough for immediate action to stop it.
So… we have the situation. Now: what do I
have, what do I want, and how can I best use the former to get the latter?
“Councilors, do
you mind if I show you a memory from my childhood?” Harry said,
rising from his seat.
“What?”
Councilor Tineagar said, startled. It was, he thought, the first
time she’d spoken in the meeting.
Hig said nothing,
watching Harry closely. Neither he nor Tineagar rose from their
seats. Damn. This was so delicate, and so much could hinge on these
moments. They couldn’t afford to alienate the Americas. Hig was
so suspicious, and what was worse, he was right to be
suspicious.
Harry put himself in
Hig’s place, thinking, What would I do, if I were him --
motivated by pride and his specific moral considerations, not
constrained by fear -- if I were trying to broadcast this
conversation and Voldemort wanted to change the subject before I’d
gotten a confession? Hmm... He must think that this is how Voldemort
is going to kill him. ‘Here, lean over this large cauldron and let
me show you something… your death, fool!’ He won’t move unless
he has no further choice, since he wants better proof than simply his
assassination. He’s trying to force a confrontation.
As so often, they
faced a Prisoner’s Dilemma. How could they arrange to cooperate?
The thought process
took only a second. It was impossible to simply promise someone they
were safe, since it could be interpreted as apophasis (if you’re
saying they’re safe, it implies you’ve contemplated otherwise).
He had to pre-commit to warding them, and do it in such a way that he
gave Hig a weapon to use against him in case he defected. If he made
it far more costly to defect, in an obvious way, then they could be
more sure he wouldn’t take that option.
“Auror Pirrip,
Auror Kwannon,” Harry said, turning to the two aurors in the room.
“I wish to show these two delegates a memory in my Pensieve. I
would like you to accompany us, and keep them safe, particularly.
They are exceedingly important people, visitors from the Council of
Westphalia, and absolutely no harm must come to them. There have
been times when assassins have used the cover of an accident to
disguise murder. So we shall treat any accidents that happen to
these delegates, who have come here only to assist their people and
all the peoples of the world, as deliberate and unforgivable attempts
on their life.”
Technically, he
wasn’t supposed to give them orders. He was a private citizen. No
one ever paid that illusion any mind, though. The point wasn’t the
order, anyway… the point was the careful and explicit elimination
of the idea of a justifiable “accident.”
The experienced
Auror Kwannon gave the briefest of nods, trying to disguise her mild
contempt for the instruction. She’d been an auror for more than a
decade, and she was one of the ones Moody had judged as suitable to come
on board as a Tower guard when they first began (he didn’t “trust”
her, per se, but then Moody trusted no living wizard).
Kwannon didn’t need to be told to be suspicious of all accidents,
since that was her default mode. Harry had seen her work, and it was
intimidating.
Auror Pirrip’s
face became serious, and he gave a firm nod with was probably meant
to be a grim set to his jaw. This one was practically fresh out of
training, with the credulousness of any new law-enforcement officer,
and Harry would probably have gotten the same response if he’d
demanded that Pirrip guard a cucumber sandwich with his life.  He was also
trustworthy, brave, and a whiz at Transfiguration. Funny, Harry and
Pirrip were about the same age, yet such different people.
Harry looked back at
Hig and Tineagar. Tineagar was looking to Hig; the decision was his.
And Hig was still hesitant. Curiosity was having its effect, of
course -- the man thrived on information -- but he’d had a plan in
mind when he came in to confront Harry, and he was loath to abandon
it. Yes, he might be somewhat convinced that he wasn’t in any
danger, but that didn’t yet make him ready to step aside from his
preconceived plans. He needed… something more.
Harry paused.
What would
Dumbledore do?
“You wound me,
Harry. Do you not at least realise that what I have told you is a
sign of trust?“
Dumbledore would
stop trying to pull levers. He’d lay his heart out, raw and
vulnerable. This is a brave man, and a good man. Treat him like
one.
Harry looked Hig in
the eyes, and spoke quietly and directly. “Councilor Hig, you are
mistaken about me. You are wholly mistaken about me. I wish to show
you some proof. You will come to no harm. Please, sir. Come with
me.”
Slowly, Hig rose
from his seat, followed by Tineagar. “Very well, Mr. Potter.”
The American’s beetle brow was furrowed, and his face was wary…
but he had agreed.
Harry led the way
from the room. He chose a route that would lead them past a couple
of chosen research centers in the sprawling (and ever-growing) Tower
complex.
They walked past the
Survey Station, first, as they headed down the featureless and
evenly-lit grey stone corridors. The Survey Station was an outgrowth
of another research project, which was an attempt to develop a simple
battery of spells to reveal a variety of health problems that were
not addressed by modern magical medicine (detecting the alleles that
could give someone’s offspring Tay–Sachs disease, for example).
It had become apparent along the way that detection magic itself was
woefully inadequate, and was (like most magics) a huge kludge. Harry
had tasked the trio of wizards working in the Survey Station on
improving at least one aspect of that shortcoming, by developing or
refining or researching spells to detect discrete elements. He’d
set them the goal of being able to detect a single mole of any
element. Three weeks later, one of them had finally come to him to
ask, “A single mole in what volume of space?” and Harry
had put that person in charge.
It looked very
studious and very benign, as they whisked by the entrance. Just
three people taking turns scrawling on slates and pointing their
wands at a big glass tank.
They also passed by
the Advancement Agency, the first research station he’d set up.
They had a single mandate, but the scope of it meant that they had
the largest staff of anywhere in the Tower aside from the clinic.
Harry had told them about the special wards and magics laid over the
Tower, and about the “new techniques” in Transfiguration that
allowed for safe free Transfiguration of people, and he had given
them a direction made possible by these advances: “Improve homo
sapiens.” Twenty-eight wizards and Muggles worked in the
Advancement Agency, and the experimenting alcoves were quite a sight
to see. But the main room of the station was, again, just another
gaggle of people speaking in hushed tones and consulting weighty
books.
This walk through
the compound, along with the walk to the meeting room, sent important
messages to the visitors.
-
Look at all these normal-looking people doing harmless things! There were no walls dripping with blood or chairs upholstered in mermaid skin. While useless as an articulated argument, the normality of what they saw would soothe their suspicions further.
-
Look at all these witnesses! Everyone feels safer in a crowd.
-
Look at all these vulnerabilities! All of the witches and wizards they saw could be corrupted, blackmailed, persuaded, spied upon, and otherwise used as a tool by any future attacks from the Westphalian Council. Harry knew this, Hig knew it, and Hig knew that Harry knew that Hig knew it. This would be doubly effective if Harry’s hypothesis was correct, and many of their faces were being recorded or broadcasted right now.
Publicly, there were
twenty-five research centers in the Tower. This was the most that
Harry felt he could manage. By the time they gained enough autonomy
so that they no longer required so much of his personal direction,
his available time would be even further reduced. Or at least, that
was the plan, as they brought more and more of the magical world into
the Treaty. These days, his time was very tightly-scheduled and
filled with emergencies, but he still had seven or eight hours out of
every thirty to devote to his own pursuits. This was probably the
sweet spot, and someday he’d look back on such luxury with
fondness: enough power and resources to begin to make meaningful
global change, but enough time to enjoy himself in his off-hours.
There was also a
twenty-sixth research center, named X. Only Harry ever went there.
It was hidden, accessible only by complex wards and riddles, and was
filled with intricate golden devices. None of them did anything
except function as ever-more-elaborate alarms, though… the
twenty-sixth room was just where Harry went to read. This precaution
had only ever ensnared one spy, but it was worth it just so that
Harry could have at least one peaceful sanctuary.
No, the real secret
wasn’t X. The real secret was Room 101. And besides him, only
Hermione and Amelia knew of the entrance to Room 101. In fact, so
far as he had any reason to suspect, only the three of them -- and
perhaps Moody, you always had to count him -- even knew about the
existence of Room 101, and its small black box. Security through
obscurity.
They’d arrived at
the Records Room. It was one of the places where Harry’s
sensibilities had not won out, and it had been built in the fashion
of wizarding libraries. The relatively small stone room had a
low-hanging ceiling, almost every meter of which was covered with
half-sized ebony doors. Except for one corner of the room, all of
the walls and the floor were also covered in the doors. They had
arcane, miniscule labels on them, written in crabbed handwriting.
Should a researcher open one on the ceiling or floor, a charm swept
them into a separate room with wide-stretching shelves, well-lit by
glowglobes and supplemented by comfortable armchairs. The goblins
needed stepladders to get to the ceiling doors.
Harry had shouted at
them when they’d “found” it all built the way they wanted.
“There are doors everywhere!” he’d shouted. “Why not just
make it a bigger room, and put all the doors on the walls?! What
about when people fall through one of the doors on the floor?  And haven’t you ever heard of a
card catalogue?!”
As it happened, they
had not heard of a card catalogue, and they did not understand his
insane Muggle building sensibilities, and this was the proper design
for the personal library of a Grand Sorcerer, and that was that.
Regardless, it gave
neither Hig nor Tineagar any pause when they saw it, and they
followed Harry without hesitation to the un-doored corner, where a
Pensieve stood on its stone pedestal. The aurors trailed the trio.
Harry turned to the
two Americans, and sighed. “It is difficult to prove that I am not
Voldemort, particularly if you think all of my current efforts to
save lives are an elaborate front. Anything I show you now could
just be some sort of elaborate ploy, chosen specifically to fool you.
But I do think there is one sort of memory I could show you that
will convince you that I am not Lord Voldemort.
“Councilors, I
believe that sentient life is the highest good, and preserving and
perpetuating that life is my dearest goal. Voldemort held all life
in disdain, from what I have heard… almost all people bored him,
and formed no part of his utility function -- that is to say, he
assigned them no value. I think that the Muggle scientific method is
the noblest and surest path forward for us all, while Voldemort was
famously scornful of Muggles.” He thought for a moment, and added
a third difference. “And, Councilors, I love some people dearly.
As far as I know, Voldemort had no love in him.”
Harry held his wand
to his brow. He found the memory he wanted, wincing a little as he
recalled it. Then he pulled it free, using the wordless twisting
motion needed to cast the unnamed Pensieve spell. Harry felt the
memory slip away from him like the last tenuous moments of a fading
dream, and saw the silvery liquid hanging heavily from the tip of his
wand. He sighed, and placed it gently into the waters of the
Pensieve. It swirled about, and a light mist began to rise from the
wide metal bowl, showing that a memory was present in the device.
“There is another
very large difference between myself and Voldemort, though,
Councilors. He was mortally concerned about his dignity, and I have
always been dignity-impaired. Voldemort would not tolerate appearing
ridiculous. And so I will show you this, Councilor Hig, even though
it may cost me a great deal of your respect. This is a memory from
when I was younger. I believe it will prove to you absolutely
that I am not Voldemort or any kind of dignified Dark Lord.”
He stepped back, and
turned away, his face already blushing. Hig looked at Tineagar for a
moment, a look full of meaning. Harry assumed that there was some
kind of communication going on between them, something along the
lines of, “If this melts off my head, be sure the Alliance gets
these plans, you’re my only hope.” Then Hig leaned forward, and
put his face into the waters of the Pensieve.
This device could
really stand to be optimized, Harry thought to himself as he
stood and waited. This can’t be the best arrangement… a big
washbasin into which you dunk your head? We’ll have to see exactly
how wide and deep the waters need to be, before memories cease to
circulate and transfer. If the water just needs to cover most of
your brain, we might be able to make Pensieve headbands, instead.
They all waited,
awkwardly watching the back of Hig’s head as Pensieve-mist rose
around it.
“Pardon my
ignorance, but did you go to the Salem Witches Institute, Councilor?”
Harry asked Councilor Tineagar, abruptly, while they waited.
“I attended the
Russell Center, actually, Mr. Potter. I was Dux Litterarum of my
year, as it happens.”
“I have never had
the pleasure of visiting, unfortunately. I have read of it though,
and admired what I read. There is much to be said for the
apprenticeship program -- working a trade while you learn. May I ask
what you specialized in while you were there?”
“Floo connections.
We have several different networks that compete, plus private
networks. It’s different from how you do it here.” She hadn’t
relaxed even slightly. Still: progress, if not perfection. More
than one international alliance began with small talk.
“Mm. I like the
idea of that sort of private competition in theory, but it seems like
the free market would be particularly merciless in the process of
sorting itself out. Floo injuries can be very unpleasant, and by the
time people switched to the better network, the price paid for that
information could be measured in terms of lives.”
“There are minimum
standards for safety, and there’s an official bureau assigned by
the Magical Congress to do inspections. Have you considered that
perhaps competition between networks would work better than a single
central authority to promote safety? If I hear that Greater Boston
left someone splinched out of a toe, then I’ll pick the Other Light
without hesitation. But if some junior assistant undersecretary in
the British Department of Magical Transportation makes a mistake with
your connection here, where do you go? Nowhere, you just cross your
fingers and hope they fire the fool.”
“You make a good
point. But there’s a better way to settle this than argument. We
can-”
“What in the name
of Mukwooru’s toe?!” Hig spluttered as he jerked backwards,
staring at Harry in confusion and alarm and (it appeared) mild
disgust.
“Ah. Yes.”
Harry said, grimacing. “That was what my parents would call the
‘Salamander Incident.’ “
“But… but why?!
Those poor people…” Hig stammered.
Harry shrugged. “In
my salad days, when I was green in years, I was rather too creative
and too bored and too clever. Everyone recovered, I assure you. No
lasting harm done.”
Hig sat down on the
floor for a moment, plunking himself down without ceremony next to
the Pensieve. He tugged his robes around his knee where a fold had
gotten caught. The motion was half-hearted; the man seemed stunned.
Harry didn’t blame him.
Tineagar turned to
the Pensieve, but Harry cleared his throat loudly and stepped to it
with a quick step, dipping his wand into it and retrieving the
memory. “I think,” he said, “that I’d prefer that as few
people see this as possible. Apologies, Councilor.” Harry looked
at the viscous gobbet of glowing silver. “Really, I see a lot of
appeal in just destroying it, but we only develop our psychic muscles
with hard times and oppression.” He brought the wand to his
forehead, and returned the memory to its place with a reversed
twisted of his wrist. He grimaced.
It took a bit, but
Hig recovered himself in impressively short order, rising to his
feet. “Mr. Potter, I have no words.”
“It was part of a
contest between myself and two other boys, you see.”
“And the -- ”
“Inside the
walls,” Harry answered, promptly.
“But the -- ”
“Bought in
Hogsmeade.”
“Well,” said Hig
heavily. “You are not Voldemort. He would not have allowed this
to be known about him.”
Not true,
Harry thought. If it served his purposes, and it was worth the
price, he would allow himself to be ridiculous. It would have seemed
a high cost, but heading off a worldwide rebellion would be worth it.
This man does not fully appreciate the extent to which Voldemort’s
public persona was a facade.
“Indeed, I am not
Voldemort. I oppose his purposes at virtually every turn, and you and I are
natural allies, not enemies.” Harry folded his arms, but showed a
small smile. The tension and the antagonism between them was
entirely dispelled.
“No,” said
Tineagar, interrupting the two of them. Harry and Hig turned to
regard her. Harry was mildly surprised -- had he been too friendly
with her, and dispelled a mystique that would have kept her quiet? --
but Hig’s gaze was sharply attentive. She continued, “Reg says
that you are not Voldemort, given what he has seen. I will abide by
his judgment on that score, though it is suspiciously convenient for
you, Mr. Potter. But everything else he said was true, and
all the other patterns we have discerned remain.”
She folded thin
fingers into each other, and met Harry’s eyes with the look of a
raptor at hunt among its natural prey. “You may not be the Dark
Lord Voldemort, but that does not mean you are not the Dark Lord
Potter. The fact that Reg’s theory is wrong does not prove that
you are a good man.”
Hig gathered himself
noticeably. By all accounts he was a passionate man. He’d once
stood alone in the chambers of the Council of Westphalia, Harry had
heard, and argued for an end to the official persecution of centaurs
(which had still been registered as Dark Creatures in the Westphalian
laws at the time). It took three weeks for deliberations, but by the
end, this man who’d stood alone had convinced a full majority of
the Council.  It made him liable to large
shifts of emotional stance. Harry saw, now, why Hig had brought
Tineagar with him here. She was a partner who was not given to being
caught up in events, rather than a minion.
“Limpel is
correct.” Hig said. “The owl is not white, but that doesn’t
make it black.”
“True,” Harry
admitted. “But this is, I hope, a foundation. I hope to persuade
you, in time, by showing you the ways in which you are wrong. You
think I am raising the dead by dark rituals? Meet Ms. Hermione
Granger, who has been my dearest friend for years, and have a
conversation with her. She is no Inferi, and no monster. You think
I am controlling those that we heal here? Let me show you the
clinic, so you can see some of the lives we save.
“I have shown you
a hidden secret, and made myself vulnerable to you.” Hig nodded.
Harry continued. “I have cooperated, even though it leaves me at
greater risk if you choose to defect, because we are at a beginning
here together. A beginning is the time for taking the most delicate
care that the balances are correct. We have laid something between
us, and we can build upon it.“
Tineagar held his
eyes, then nodded curtly. Hig nodded as well. After a moment, he
made a noise in his throat, clearing it. “We can begin building
now, in fact… in some small measure. You have shared a deep
secret, knowing that it could be used against you. I respect that,
as a measure to demonstrate trust. I can only tell you now that I am
sorry to say that your secret, and that memory, may have already gone
further than you wished.”
Harry felt a shiver
run down his spine. He suppressed the temptation to blurt out, like
a child, that he knew what Hig was about to say.
He was no longer a child.
“We wished to
ensure that the world could stand against you in the same way they
stood against Grindelwald, and the best way seemed to be to unite
everyone behind unequivocal evidence before any more harm was done.
And so, I am sorry to say, we both are wearing rather novel buttons.”
He tapped one of the buttons on his robe’s collar. “Everlasting
Eyes. Quite a new innovation. We had them made specifically for
this meeting, and we wanted something you could not easily defeat.
We had heard of the magnitude of your defences. Thus, everything we
see and hear has been sent out from here to a small group of
Councilors that we wanted as witnesses. And that might include the,
uh, Salamander Incident.”
“Well, thank you
for telling me. I hope I can rely on your discretion?” Harry said.
“Yes, Mr. Potter,
you may. We will not betray your confidence, and I will take every
measure necessary.”
Harry nodded. “How
did you get them past our security?” An auror should have detected
them, or a Probity Probe, or at least the bottled chizpurfles.
“We have been
paying attention to you and your enemies here in Britain,” Mr. Hig
said, and Harry allowed himself a smile. “We have noticed your use
of Muggle devices, as I mentioned, and have looked to them with the
attention they deserve. Muggles are benighted, and they merit our
care and stewardship, but perhaps even we defenders of their rights
had allowed ourselves to underestimate their cunning. Cleverness is
everywhere in nature. The first wizard to enchant a broomstick, in
the dark depths of old Germania, must have looked to birds as their
inspiration, after all.”
Too many of Harry’s
erstwhile allies held this same “magical man’s burden” view of
things. But it was a correctable error, given time and influence.
No wizard scoffed at Muggles once they’d seen the still beauty of
the stars, untrammelled by air.
“The Everlasting
Eye is a ‘passive bug.’ It’s not an insect, though,” Hig
said, smiling. Harry repressed his own expression. “A ‘bug’
is a Muggle device for listening in, and a ‘passive bug’ is very
difficult to detect,” Hig continued. “I first found out about
the gimmick through an amusing linguistic coincidence, but that’s
not important now. The important thing is that it doesn’t have
electricity in it. It’s acting like a dish resonating
the cavity, and it gets its power from electricity being sent all
through the air right now. There is a camera with it, that gets its
electricity from the same source. Not a trace of magic -- not even a
Charm of Perfect Function -- and yet it works well despite dense
magics surrounding it, unlike other Muggle gimmicks.”
Both of the
Americans looked very proud of themselves, notwithstanding their
evident lack of understanding of the principles involved. The camera part of the device was probably useless here, for example, since it did have its own electronic components. Still, a passive capacity resonator was a clever idea. Blast out a
strong enough signal of the correct frequency, and you could probably
drown out any magical interference and get a clean audio signal. And however superior he might feel at listening to that stumbling explanation, he should remember that this could well have worked, under other circumstances. His own familiarity with much of modern technology and his grasp of the correct terminology didn't count for much if it didn't actually help him win.
Harry said only, “This is a new device. Perhaps the special spells laid over the Tower which permit our improved Transfiguration will interfere with the broadcast? Many of them would have been unknown to you when you were testing this gimmick.”
Harry said only, “This is a new device. Perhaps the special spells laid over the Tower which permit our improved Transfiguration will interfere with the broadcast? Many of them would have been unknown to you when you were testing this gimmick.”
“Perhaps,” Hig
agreed, sounding doubtful.
“Regardless, I
appreciate your confidence in telling me. It would be an unpleasant
surprise, otherwise. It is an exceedingly clever gambit.” Harry
turned and indicated the corridor out of the Records Room. “Will
you permit me to show you around the Tower some more?” Harry
glanced at his wristwatch. “We should stop by the clinic, first,
and then perhaps the Ypsilanti Yard.”
The rest of the
visit went well, although Harry couldn’t say they’d ever let
their guard down, or that there’d been much more progress.
Councilor Tineagar, particularly, was often watching him with
suspicion. Councilor Hig, at least, was caught up in absorbing
everything he saw and heard. The three had parted company on better
terms -- if not friendly -- and at least some of the rhetoric from
across the seas ratcheted down in tone. Outright conflict, at least, appeared to have been averted.
Progress really had been made, and all it required was some momentary humiliation on Harry’s part. He considered it a wise investment, and thought things were going very well, indeed.
Progress really had been made, and all it required was some momentary humiliation on Harry’s part. He considered it a wise investment, and thought things were going very well, indeed.
It wasn’t until
the next week that the first bomb was owled to the Council of
Westphalia, wrapped in the elegant silver and green paper of the
Noble and Most Ancient House of Malfoy. The diminishing tensions did not suit everyone's purposes, perhaps.
≡≡≡Ω≡≡≡
As far as the Muggle
world knew, the Turkmenian Mandrake, or Loschtak (Mandragora
turcomanica) was extinct. Even most witches and wizards thought
that this useful tuber had died out seventy years ago, when one of
Grindelwald’s death squads, the Záh Kardja, burned Borley
Rectory to the ground. The “Sword of Záh” had been infamous for
their completeness, after all.
The species was not
entirely extinct, however. Certain corners of the world still
harbored a few plants, and among them was the Department of
Mysteries. They were a valuable and rare commodity. The common
mandrake was grown everywhere in the wizarding world; extracts of the
root were often used in different sorts of potions, and the pulped
fibres were employed by paper-makers to produce paper suitable for
magical portraits. The Turkmenian mandrake, on the other hand, could be
occasionally used to temporarily coax information out of an unstable
ghost. Such a property had infrequent but useful purposes,
particularly for the purposes of law enforcement. The Unspeakables
would sometimes, under conditions of great secrecy, thus produce for
an inquiring auror a steaming mash of boiled mandrake. The steam
could solidify a ghost’s bonds with the world, for a time, and
permit questioning.
Six years ago, many new requests and orders had begun pouring into the
Department. What began as a trickle -- after the famous return and final defeat of Voldemort in 1992 and the establishment of a new order -- became a torrent eleven months later, with a dozen requests being issued on the day after Walpurgisnacht in 1993. They’d been required to rededicate the Hall of
Prophecy, now called the Hall of Science, and a program of research
had been prescribed, guided by new personnel. There had been a long
new list of ethical guidelines, many of which had been extremely
bizarre. And there had also been a call for any hoarded artifacts
which might serve specific purposes. Madame Bones had spent two days in hidden halls with the Line of Merlin, to assist the search.
One such purpose had
been the ability to sustain the human mind outside of the body. In
the most impenetrable bureaucratic jargon imaginable
(“...notwithstanding all other requests beyond the aforesaid or any
others that might arise inter alia, the party of the second
part shall in the instant case and with regard to all appertaining
items, substances, phenomena..."), the Department was tasked with
attempting to fulfill this request. Any possibilities were to be
written up in triplicate and owled to the Headmaster of Hogwarts.
This destination went a long way towards explaining the request: the
power and density of the magics surrounding that school, and the
insane events which often occurred on its grounds, had often spawned
bizarre requests of the Department.
Dumbledore, for
example, had once asked them to produce from their vaults the Seventh
Hammer of the Shona, stating that he wished to destroy a rock of
unknown provenance and import with utter certainty.
This time, the Unspeakables
wrote up descriptions of various possibilities, after three weeks of
research. And after a tedious process of discussion, deliveries, and
deliberation, Harry Potter had finally asked for the delivery of
several whole Turkmenian mandrakes. A year later, he’d asked for the
delivery of eight more. And as far as the Unspeakables were concerned, that had been the end of it.
O house which is a ziggurat, grown together with heaven and earth,
foundation of heaven and earth, great banqueting hall of Eridug!
Abzu, shrine erected for its prince, house which is the holy mound where pure food is eaten,
watered by the prince's pure canal, mountain,
pure place cleansed with the potash plant,
abzu, your tigi drums belong to the divine powers.
Your great wall is in good repair.
Light does not enter your meeting-place where the god dwells, the great assembly-room,
the assembly-room, the beautiful place.
Your tightly constructed house is sacred and has no equal.

-- Enheduanna


class XIVAPI::Dataclasses::FreeCompany
- XIVAPI::Dataclasses::FreeCompany
- Reference
- Object
Overview
Dataclass containing the information about a Free Company.
Defined in:
dataclasses/free_company/free_company.crConstructors
Instance Method Summary
-
#active : String
A string indicating the active times of the Free Company.
- #active=(_active : String)
-
#active_member_count : UInt64
The number of active members in the Free Company.
- #active_member_count=(_active_member_count : UInt64)
-
#crest : Array(String)
An array of URLs to the images that make up the crest for the Free Company.
- #crest=(_crest : Array(String))
-
#estate : XIVAPI::Dataclasses::Estate
An
Estate
class containing details about the Free Company's Estate. - #estate=(_estate : Estate)
-
#focus : Array(XIVAPI::Dataclasses::FreeCompanySeeking)
An Array of
FreeCompanySeeking
classs indicating what the focuses of the Free Company are. - #focus=(_focus : Array(FreeCompanySeeking))
-
#formed : Time
Timestamp of when the Free Company formed.
- #formed=(_formed : Time)
-
#grand_company : String
The name of the Free Company's presiding Grand Company
- #grand_company=(_grand_company : String)
-
#id : String
The Lodestone ID of the Free Company
- #id=(_id : String)
-
#name : String
The Free Company's name
- #name=(_name : String)
-
#rank : UInt8
Integer rank of the Free Company
- #rank=(_rank : UInt8)
-
#ranking : XIVAPI::Dataclasses::FreeCompanyRanking
A
FreeCompanyRanking
class containing the Free Company's rankings. - #ranking=(_ranking : FreeCompanyRanking)
-
#recruitment : String
A string representing the recruitment status of the Free Company.
- #recruitment=(_recruitment : String)
-
#reputation : Array(XIVAPI::Dataclasses::FreeCompanyReputation)
An Array of
FreeCompanyReputation
classs indicating the Free Company's reputation scores with the Grand Companies. - #reputation=(_reputation : Array(FreeCompanyReputation))
-
#seeking : Array(XIVAPI::Dataclasses::FreeCompanySeeking)
An array of
FreeCompanySeeking
classs indicating what the Free Company is currently seeking in terms of players. - #seeking=(_seeking : Array(FreeCompanySeeking))
- #server : String
- #server=(_server : String)
-
#slogan : String
The Free Company's slogan.
- #slogan=(_slogan : String)
-
#tag : String
The Free Company's tag.
- #tag=(_tag : String)
- #to_json(json : JSON::Builder)
Constructor Detail
Instance Method Detail
An array of URLs to the images that make up the crest for the Free Company.
An Estate
class containing details about the Free Company's Estate.
An Array of FreeCompanySeeking
classs indicating what the focuses of the Free Company are.
A FreeCompanyRanking
class containing the Free Company's rankings.
An Array of FreeCompanyReputation
classs indicating the Free Company's reputation scores with the Grand Companies.
An array of FreeCompanySeeking
classs indicating what the Free Company is currently seeking in terms of players.