Using Bitcoin is such a fun way to experience the future of transactions. Through this digital currency, we are now able to transfer and receive money almost instantly with less to zero fees! These traits, however, are only the surface of Bitcoin's deep prowess.
Now that Bitcoin allows users to experience fast and secure transactions, it has been adopted to almost every major player in the Internet niche. Among these departments, the Bitcoin casino market is arguably the most prominent.
The Bitcoin casino market became famous not only because it lets you experience a more thrilling way of gambling, but it also enables you to profit more Bitcoin. Imagine, through Bitcoin casino games, you are able to receive Bitcoin without the need to purchase one!
However, in spite of being a market full of opportunity, some Bitcoin users are not a fan of gambling, making them incapable of earning more Bitcoin.
Fortunately, these Bitcoin casinos and other gambling platforms offer a program that allows users to receive bitcoins even without gambling! This special program is known as the Bitcoin casino affiliates.
The Bitcoin casino affiliates program is somehow similar to the typical Bitcoin casino bonuses. This program yields lucrative amounts of Bitcoin that can go on par with some of the highest paying promotions in the market.
The only difference is that the affiliate program requires the program subscribers to invite Bitcoin gamblers to register and play on that particular casino that offers the program. Every successful invite is equivalent to a certain amount of Bitcoin. It's that easy!
If you are interested in learning more about the affiliate program, I highly recommend that you visit Bitcoin Casino Affiliates!
Bitcoin Casino Affiliates is a website that is dedicated in promulgating the wonders of the affiliate program. In this site, you can get hold of the fundamental aspects of the program, with a variety of guides that will certainly help you moving forward!


The Violet Richardson Award recognizes young women between ages 14 and 17 who make the community and world a better place through volunteer efforts such as: fighting drugs, crime and violence, cleaning up the environment, working to end discrimination and poverty, and more. Volunteer actions that benefit women or girls are especially valued.
For further information please contact us: vra@soroptimistvancouver.org.
Good luck! We applaud all applicants' efforts to make our community and the world a better place.


text:
Q: Monthly Climatology for Pandas DataFrame with MultiIndex I have a DataFrame with two years of monthly data Y. I need the second column Y_avg with the climatology to be able to subtract both.
              Y   Y_avg
T          X
2000-01-31 1  51  63
           2  52  64
2000-02-29 1  53  65
           2  54  66
2000-03-31 1  55  67
           2  56  68
2000-04-30 1  57  69
           2  58  70
2000-05-31 1  59  71
           2  60  72
2000-06-30 1  61  73
           2  62  74
2000-07-31 1  63  75
           2  64  76
2000-08-31 1  65  77
           2  66  78
2000-09-30 1  67  79
           2  68  80
2000-10-31 1  69  81
           2  70  82
2000-11-30 1  71  83
           2  72  84
2000-12-31 1  73  85
           2  74  86
2001-01-31 1  75  63
           2  76  64
2001-02-28 1  77  65
           2  78  66
2001-03-31 1  79  67
           2  80  68
2001-04-30 1  81  69
           2  82  70
2001-05-31 1  83  71
           2  84  72
2001-06-30 1  85  73
           2  86  74
2001-07-31 1  87  75
           2  88  76
2001-08-31 1  89  77
           2  90  78
2001-09-30 1  91  79
           2  92  80
2001-10-31 1  93  81
           2  94  82
2001-11-30 1  95  83
           2  96  84
2001-12-31 1  97  85
           2  98  86

This is my temporal solution:
f = np.tile(np.arange(1,25),2)
df['Y_avg'] = np.tile(df.groupby(f).mean().values.ravel(),2)

But how can I do that more efficiently?
Thanks for the help!

A: So you want the Y_avg to be the mean by X and the month of T, right? Assuming the T level of your MultiIndex is a DatetimeIndex, use
gb = df['Y'].groupby([df.index.get_level_values(0).month,
                      pd.Grouper(level=1)])
df['Y_avg'] = gb.transform('mean')

A: Firts of all, I had a hard time recreating the dataframe copy-pasting the data, so
for all of you that may want to answer the question, you can recreate the example with the following code:
import pandas as pd

# Create a date range, convert to list and duplicate
T = pd.date_range("2000-01-31", "2001-12-31", freq="M").tolist() * 2
# Create a list of repeated [1, 2] to match length of T
X = [1, 2] * (len(T) // 2)
Y = range(51, 99)
index = pd.MultiIndex.from_arrays([sorted(T), X], names=("T", "X"))
df = pd.DataFrame({"Y": Y}, index=index)

Then to calculate the mean of Y with respect of level T, you can use the following code:
Y_avg = df.Y.mean(level="T")
df = df.join(Y_avg, on="T", rsuffix="_avg")

First, you can calculate the mean with respect to certain index using the level parameter of the mean series method. The you can perform a standard dataframe join to merge the Y_avg series with the dataframe on the "T" index. Please note that you must provide a suffix (rsuffix in this case) to properly deal with columns' names.

redpajama_set_name: RedPajamaStackExchange


text:
LLNL Researchers Bioprint Living Aneurysm and Watch it Heal Post-Op
November 6, 2020 by Sarah Saunders 3D Printing3D Printing ResearchBioprintingMedical 3D Printing
Cerebral aneurysms, caused by the artery walls in the brain weakening, affect roughly one in every 50 people in the US, and are distinguished by a bulging blood vessel, which can cause brain damage, stroke, or even death if ruptured. A team of researchers from Lawrence Livermore National Laboratory (LLNL), Duke University, and Texas A&M has been working hard to improve current surgical procedures and make them more patient-specific. These scientists used 3D bioprinting to create the first living aneurysm outside of the human body, and then performed a medical procedure, watching it respond to treatment and heal just like a real brain.
The team published a paper on their work in the journal Biofabrication.
"Herein, we developed three-dimensionally (3D) printed aneurysm-bearing vascularized tissue structures using gelatin-fibrin hydrogel of which the inner vessel walls were seeded with human cerebral microvascular endothelial cells (hCMECs). The hCMECs readily exhibited cellular attachment, spreading, and confluency all around the vessel walls, including the aneurysm walls. Additionally, the in vitro platform was directly amenable to flow measurements via particle image velocimetry, enabling the direct assessment of the vascular flow dynamics for comparison to a 3D computational fluid dynamics model," they wrote in the abstract.
The in vitro living cerebral aneurysm. (a) Illustration of the 3D printed aneurysm bioreactor. (b) The in vitro aneurysm vessel structure perfused with red fluorescent beads, demonstrating the formation of patent vessels post-evacuation of sacrificial ink.
Obviously, brain aneurysms are not easy to fix. One very invasive treatment consists of attaching a metal clip to the base in order to redirect blood flow away from it, and requires surgeons to open the skull and expose the brain. Another common, but less invasive treatment, is called endovascular metal coiling, and involves a surgeon inserting a thin metal catheter into an artery in the patient's groin, feeding it all the way up through the body and into the aneurysm (sounds invasive to me!). Then, they pack it with stents or coils, which causes a clot, and the endothelium that line the blood vessel in question will grow over the clotted plug, basically building a wall around the aneurysm so it's separated from the rest of the vasculature. Unfortunately, the outcome of both of these treatment methods often varies from patient to patient.
"While there are a lot of promising treatment options, some still have a long way to go. Animal models aren't necessarily the best way to try out these options, as they lack direct observation of treatment effects and have uncontrollable aneurysm geometries," said LLNL engineer and principal investigator Monica Moya. "Having this robust, human in vitro testing platform could help facilitate new treatments. If we can replicate aneurysms as much as we need to with these devices, we might help accelerate some of these products into the clinic and essentially provide patients with better treatment options."
3D printing has been used before to help surgeons train for these complex procedures using models, and even monitor cerebral aneurysms in real time. But the LLNL-led research team was able to replicate a brain aneurysm in vitro by using human cerebral cells to create bioprinted blood vessels. Another LLNL engineer, William "Rick" Hynes, who was the original principal investigator, had the idea that bioprinting with human cells could help medical researchers create and validate more predictive, patient-specific, biologically relevant 3D models.
Using 3D printing, an LLNL team replicated an aneurysm in vitro and performed an endovascular repair procedure on it, inserting a catheter into the blood vessel and tightly packing platinum coils inside the aneurysm sac. They introduced blood plasma into the aneurysm and observed a blood clot form where the coils were located. The green areas depict the endothelial cells and the red indicates the formed clot. Photo by Elisa Wasson, LLNL
Hynes said, "We looked at the problem and thought that if we could pair computational modeling and experimental approaches, maybe we could come up with a more deterministic method of treating aneurysms or selecting treatments that could best serve the patient. Now we can start to build the framework of a personalized model that a surgical practitioner could use to determine the best method for treating an aneurysm."
Hynes and Moya teamed up with former LLNL scientist Duncan Maitland, who leads a biomedical engineering group at Texas A&M and also heads Shape Memory Medical, which is developing an experimental shape memory coil for aneurysm treatment; and Amanda Randles, another former LLNL scientist and current Duke assistant professor who developed a code for simulating blood flow, for this work. Additional authors of the paper are Lindy K. Jang (Texas A&M), Javier A. Alvarado (LLNL), Marianna Pepona (Duke), Elisa M. Wasson (LLNL), Landon D. Nash (Shape Memory Medical), and Jason M. Ortega (LLNL).
Particle image velocimetry (PIV) analysis and 3D computational flow model simulations. (a) (Above) PIV measurement at the back of the aneurysm dome showing no detectable flow at a 300 µl min−1 flow rate. (Middle) A 3D flow simulation of the same geometry and flow rate at z = −0.66 mm. (Below) PIV measurements within the parent and daughter vessels captured with a 2× objective at the same flow rate. (b) (Above) PIV measurement gathered at the back of the aneurysm dome showing circular flow patterns and captured with a 4× objective at a 20 ml min−1 flow rate. (Below) Simulation of the same geometry and flow rate demonstrating that fluid motion only occurs within the dome at high flow rates. (c) High-fidelity geometric reconstruction of the printed living aneurysm constructed from image stacks gathered via confocal microscopy.
The team designed bioreactor sidewalls for the aneurysm platform in SOLIDWORKS, and used open source Slic3r software to convert the design to G-code. Using a custom extrusion bioprinter, the walls were then printed out of SE-1700 silicone onto glass slides, which were then cured and sterilized in an autoclave. The blood vessel geometry was printed using a sacrificial ink, surrounded by a protein-based hydrogel; this was cooled to dissolve the ink, which left behind the shape of the vasculature. Human brain endothelial cells coated the channels to form the aneurysm and blood vessels.
Hynes performed the repair on the bioprinted aneurysm by inserting a microcatheter and tightly packed platinum coils inside the sac. Then, the researchers introduced blood plasma, and watched a blood clot form at the coils' location on the aneurysm, cutting it off from the fluid flow. Eight days after what LLNL believes is "the first surgical intervention ever performed on an artificial living tissue," the team saw the post-op healing process of the endothelium within the vessels with their own eyes.
Endothelialization of aneurysm-bearing printed vessels. (a) Confocal image of actin stained endothelial cells after 7 d of perfusion culture. (b) Close-up image of actin stained endothelium (green) within the aneurysm dome, demonstrating fully confluent monolayer growth.
The researchers also used the device to show the validity of Randles' flow dynamics model, noticing little blood movement into the aneurysm at low flow rates and a faster, circular flow when the rate was increased, like what would happen if a human patient was agitated.
When paired with computer modeling, LLNL says that this platform is a big step in creating patient-specific brain aneurysm care based on factors like blood pressure and blood vessel geometry, which could help speed up the amount of time it takes for complex surgical techniques to make their way to training clinics. Surgeons can use it as a tool to choose the best aneurysm packing coils ahead of surgery.
"Essentially a clinician could literally look at somebody's brain scan, run it through the modeling software, and the software could show the fluid dynamics prior to treatment. It also should be able to simulate that treatment and allow the practitioner to narrow down to a certain type of coil or packing volume to ensure the best possible outcome," Hynes explained.
Deployment of endovascular bare platinum coil (BPC) intervention treatment within the in vitro aneurysm. (a) Image of dual coil deployment with the aneurysm dome. (b) Micrographs of brightfield monitoring during BPC insertions from the endovascular microcatheter (1st BPC: 3 mm × 6 cm, 2nd BPC: 2 mm × 3 cm). (c) Maximum projection confocal image stacks of an artificial aneurysm filled with 1 µm red fluorescent beads before and (d) after BPC (2 mm × 3 cm) deployment and retraction, demonstrating no damage to the sac during insertion.
The platform can also be used to gain a better understanding of basic biology and post-op healing, as well as perform test runs ahead of time, without having to induce animals with aneurysms and then perform surgery. It can directly measure fluid dynamics inside the aneurysm and blood vessels, which can't be done with animals.
"This is an ideal platform for an in silico model because we can make these flow measurements that would be incredibly difficult to make if you were doing this in an animal. What's exciting is that this platform mimics blood vessel compliance and the mechanical stiffness of brain tissue. It's also robust enough to handle a coiling procedure. You're seeing the vessel distend and move, but it's able to withstand the procedure — very much like you would in vivo," Moya said. "This makes it ideal to be used as a training platform for surgeons or as an in vitro testing system for embolization devices."
Plasma clot formation in response to BPC deployment within in vitro living aneurysm dome. Maximum projection confocal image stack of the complete in vitro aneurysm after BPC deployment and injection with bovine plasma. Clot formation is visualized via accumulation of trace fluorescently labeled red human fibrinogen included with the plasma mixture. Endothelial cells are fluorescently stained green for actin. Imaging reveals clot formation and occlusion of the aneurysm sac, with no major clot formation present elsewhere in the vessel structures.
The LLNL team says that this platform is showing promise at this early stage. Their next step is to combine a 2D blood-clotting model that LLNL computational engineer Ortega created with Randles' 3D fluid dynamics model, in order to simulate how aneurysm-causing blood clots form in response to coils in 3D.
(Source: LLNL)
Tagged with: 3D printed aneurysm models • 3d printed bioreactor • 3d printed blood vessels • 3D printed medical treatments • 3D printed silicone • aneurysm • Bioprinting for in vitro tissue research • brain aneurysm • Duke University • journal article • Lawrence Livermore National Laboratory • LLNL • research paper • Texas A&M University

redpajama_set_name: RedPajamaCommonCrawl


text:
package org.iotivity.service.sample.client;

import android.content.Context;
import android.util.Log;
import android.widget.Toast;

import org.iotivity.service.RcsException;
import org.iotivity.service.client.RcsRemoteResourceObject;

public class Utils {
    public static String resourceInfo(RcsRemoteResourceObject resourceObject)
            throws RcsException {
        StringBuilder sb = new StringBuilder();

        sb.append("URI : " + resourceObject.getUri() + "\n");
        sb.append("Host : " + resourceObject.getAddress() + "\n");
        for (String type : resourceObject.getTypes()) {
            sb.append("resourceType : " + type + "\n");
        }

        for (String itf : resourceObject.getInterfaces()) {
            sb.append("resourceInterfaces : " + itf + "\n");
        }

        sb.append("isObservable : " + resourceObject.isObservable() + "\n");

        return sb.toString();
    }

    public static void showError(Context ctx, String tag, String msg) {
        Toast.makeText(ctx, msg, Toast.LENGTH_SHORT).show();
        Log.e(tag, msg);
    }

    public static void showError(Context ctx, String tag, Exception e) {
        Toast.makeText(ctx, e.getMessage(), Toast.LENGTH_SHORT).show();
        Log.e(tag, e.getMessage(), e);
    }
}

redpajama_set_name: RedPajamaGithub


We are proud to be a pet-friendly apartment community and look forward to welcoming your dogs and cats as members of our family (limit two pets per apartment).
A nonrefundable $250 registration fee is required for each dog or cat, and the monthly pet rent is $50 per dog and $25 per cat. Singh requires up-to-date copies of your pet's immunization record. Please provide this at or before the time of lease signing. Also, if possible, we would like to keep a photo of your pet on record.


Compare cell phone carriers in Danbury, NC to find the best cell phone carrier for your needs using PhoneDog. Compare cell phone carrier coverage maps in your area. Click or tap on the wireless carrier logos to view the coverage map for that carrier. Use our cell phone plan comparison tool to find and compare the wireless carrier plans, pricing, and more. The comparison tool includes major and minor carriers. The minor carriers and MVNOs run on the networks of one of the major carriers.
What's the Best Cell Service in Danbury, NC?
In today's digital world you truly don't have to look far to find a cell phone plan that will fit your needs, have good service in Danbury, NC, and is perfect for your budget at the same time. But you still should compare cell phone plans to make sure you aren't overpaying for a service that you could get elsewhere for cheaper. You may also think that one deal is the best one, but it might not be after you compare the rates and features of their service with another plan. When you do come across a plan that seems like it might be the best, you will want to first compare it with other cell phone plans. You can do that right here at PhoneDog. You can use our comparison tool to check out a variety of cell phone selections and the best prices for them in order to find a plan that works for your budget.
No matter where you live, one of the most important factors to consider when deciding on a new cell phone service is the quality of the coverage in Danbury, NC. Before deciding on any plan, it's a good idea to do some research on the carriers in your area as well as their plans. You might find an exceptionally affordable plan in your area, but if the carrier has poor coverage, the low cost isn't worth the lack of service. Most customers won't have to worry too much about this factor since most major carriers have excellent coverage in metropolitan and even many rural areas. Most carriers will offer a coverage map that shows where their strongest signals are provided.
Customers in Danbury, NC are basically looking for the same thing in their cell phone plans. That is, a plan that will allow them the minutes that they need to talk, text messaging options that will give them the freedom to send and receive multiple texts, and to be able to use data. When you are choosing a wireless service you will be choosing how you get all three of these options.
Are you planning to use your cell phone for the majority of your communication in Danbury, NC? Do you talk on the phone a lot and send a lot of emails and text messages? If so, it is vastly important to choose a wireless plan that will give you all of this and more. Check into the different carriers and their plan types by using our services here at PhoneDog to see how much you would save if you already have a wireless plan. There are three main categories for all wireless cell phone carriers, which are family plans, individual plans, and no contract plans.
No contract plans are also known as pay-as-you-go, prepaid, and month-to-month plans. These plans are very flexible when it comes to pricing and payments. Pay-as-you-go plans are much better than they used to be and are a great option for when you don't want the hassle of a contract. With the prepaid option you only have to pay for the coverage that you want, although you may be required to pay additional fees. In addition, the actual phone price may be more upfront as you are required to pay for the phone in full before it can be activated. However, many no contract plans in Danbury, NC offer the latest smartphones to customers without the hassle of a contract.
To get the best plan for you in Danbury, NC, you should first understand the criteria. Talk refers to the amount of minutes you can talk without incurring a surplus charge for extra minutes. Here, you can often receive unlimited options, which might be useful if you talk on the phone frequently. Text refers to the rate for sending text messages, sometimes including a set amount of text messages that are covered under your plan. If you are in the dating world or have children in their teens or tweens, you will want to invest in a significant text message plan, otherwise you will end up with an unbelievable bill at the end of every month. Data refers to things like internet access on your phone. If you have a smartphone, you will need data for checking your email, listening to music, watching videos, and anything else that you might do without a wireless internet connection nearby.
What about data usage? Data usage is important to many mobile customers today, and most Danbury, NC cell phone carriers charge extra for heavy data usage. An unlimited data plan works well for your modern email, research, fact checking, and googling needs. Some companies hit you with high data charges if you use too much data, so make sure that you carefully consider your data usage.
If you are in the Danbury, NC area, you will find a number of different carriers, each with the ability to cover your local calls. There are individual, family, contract, and no-contract plans available, so choose wisely. In Danbury, NC, you'll find AT&T, Verizon Wireless, T-Mobile, and Sprint. In almost every case, one of these companies will be able to cover your calls. If you go through a smaller company, in most cases one of the larger companies will integrate them into their coverage network.
Verizon makes you choose between individual and family plans, but also requires you to pick between a contract and no contract agreement. Verizon is a very popular carrier in Danbury, NC. When you sign your contract with Verizon, you commit to a prepaid plan, unlimited plan, or shared plan. If you break your contract before it runs out, you will be charged a hefty fine. Both single individuals and families will be placed within the limited or unlimited plan.
If you look at the comparison tool above, you'll find these and a plethora of other providers that offer cell phone service to Danbury, NC.


Europe's leading transaction liability team, comprised of top-tier Lawyers and Investment Bankers the team structure and Broker policies for premium M&A deals.
The team are looking to appoint a Broker in London to work with the senior team on European deals.
The appointment would suit those coming from a numerical or legal background from an M&A environment ie. Corporate Lawyer, big 4 transaction services, deal advisory, Corporate Finance Analyst.


text:
You Can't Miss This Motivational Track from M.S Dhoni Biopic –Besabriyaan
Aug 24 1 min read
The trailer of Neeraj Pandey's directorial M. S Dhoni – The Untold Story featuring Bollywood actor Sushant Singh Rajput has already created a buzz around the moviegoers. Right from the poster of the film to the trailer, the story behind the struggling days of M. S Dhoni is perfectly defined.
The first track of the film entitling as "Besabriyaan" is out today and yes, it is a true motivational song for the struggling youth. The Besabriyaan song is crooned in the voice of Armaan Malik and is composed by Amaal Malik.
Besabriyaan is a Complete Motivational Dose For You
https://www.youtube.com/watch?v=y1FF64dIWa0
The first track which is released today is all about the cricketer's struggling journey and how he enjoys his success today. From M. S Dhoni –The Untold Story Tiger Shroff's alleged girlfriend Disha Patani is making her Bollywood debut. The acting done by of Sushant Singh Rajput is getting a huge appreciation by viewers. The film is all set to go on the floors by 30th September 2016. Till then you guys enjoy this motivational dose for today as Besabriyaan.
M. S Dhoni – The Untold Story Trailer is Out – Watch Video
Bad News: M S Dhoni's Biopic Launch During World Cup Cancelled!
Salman Khan To Reunite Soon With Munni On-Screen
Nachde Ne Saare From BBD is the Best Wedding Song of the Year


text:
Comprehensive social awareness essential to improve public health - President
President Ibrahim Mohamed Solih has stated that major healthcare concerns could be avoided and public health improved with more comprehensive and inclusive social awareness. He made the remarks in his address at the function held this afternoon to mark the golden jubilee anniversary of Hithadhoo Health Centre in Laamu Atoll.
Speaking at the function, President Solih noted that the mounting problem of Non-Communicable Diseases (NCDs) is a leading cause of morbidity and mortality in the country. He highlighted that NCDs, including cardiovascular diseases, cancers, and chronic respiratory diseases, were associated with unhealthy lifestyle choices, abuse of tobacco and excessive consumption of unsafe food products including junk food and products high in sugar.
Stating that the means to address challenges in the health sector starts with increasing public awareness on the dangers of such diseases, the President said that protecting and improving public health and their communities was a top priority of the Administration.
Noting that the Administration preferred a holistic approach to all-inclusive and accessible healthcare, the President spoke about ongoing health sector development plans. In this regard, he highlighted the Administration's strategy of developing five tertiary hospitals across the country - Gan Regional Hospital is currently being established as one. He said that it would enable MRI, CT scan and X-ray services and consultations with specialist doctors closer to home.
Speaking further about the recently ratified amendment to the Decentralisation Act, President Solih stated that it broadens the role of health centres and the role of local councils in improving public health. Highlighting that it paves the way for the election of Women's Development Committees, the President affirmed that the amendments would further enable the efforts to promote better health for women and children. He also spoke about the new duties and responsibilities bestowed upon local councils with the amendment to the law.


Brook Miller mobility are specialists in vehicle adaptions which aid our customers with their driving needs. All adaptions to your vehicle are carried out by our skilled engineers. We supply a range of hand controls, boot hoists, seating solutions and many more. We have a solution to suit every need. Home assessments and consultations are given to our customers by a professional mobility specialist to ensure your needs are met to the best of our ability.
The Brig-Ayd Silver line brake and electronic throttle control has been designed to fit any vehicle which has a electronic throttle system fitted as standard to the vehicle. This means the throttle pedal has no mechanical connection to the engine and all engine speed control is carried via an electrical signal from the throttle pedal. Once our control is fitted to your vehicle we can reproduce these signals via the use of a trigger handle attached to your brake lever. The brake is operated in the same manner as our conventional single lever control, by pushing the lever forward. This system allows instant and positive control of the brake and very light fingertip control of the accelerator thus providing the least fatiguing driving experience of any of the controls we currently provide. Also available with indicator switch.
The Fadiel Satellite Remote Control Accelerator is an innovative accelerator control that attaches to the steering wheel. The ergonomic design allows the user to comfortably control the accelerator with thumb pressure whilst keeping both hands on the wheel. The product has been designed so it can be used by either hand depending on preference.
With a unique and innovative design, this Under Ring Accelerator is the world's first rotating electronic Accelerator, fully tested and approved it gives a whole new meaning to the word driving, simply rotate to accelerate. Thanks to this unique design very little space is required to complete the installation , its reduced dimensions and alternative installation method ensures comfort for both the installer and the End User alike.


text:
Orphx: Fragmentation 4LP
"Fragmentation" was the third full-length album from Orphx, originally released in 1996 on the legendary Malignant Records label. Rich Oddie, Christina Sealey, and Aron West had founded the project three years earlier, creating pitch black noisescapes inspired by early industrial music and the extreme fringes of metal. By 1996, West had departed to focus on his absurdist noise project Tropism, while Oddie and Sealey began to push Orphx in a more rhythmic direction. Cassette releases on their own Xcreteria imprint (reissued by Hospital Productions and Mannequin Records in 2017) quickly attracted the attention of Malignant Records, who offered to release the next album. "Fragmentation" was made using the same basic tools as the early cassettes: contact microphones, scrap metal, effects pedals, feedback circuits, a drum machine, a couple of synths, and location recordings and found sounds manipulated by Sealey on reel to reel machines and an 8-bit sampler.
While early Orphx recordings were primarily improvised direct to tape, this album places much greater emphasis on carefully constructed layers of sound, shaping their improvisational energy into powerful compositions that combines death industrial atmospheres and brutal power electronics with relentless, hypnotic percussion. Themes of illness, infection, and psychopathology dominate the album but are intertwined with references to transcendence, suggesting a desperate search for salvation in the midst of social / psychological disintegration.
The "Fragmentation" reissue on Hospital Productions includes the original album, now remastered by Joshua Eustis (Telefon Tel Aviv), and over an hour of additional rarities and previously unreleased recordings. This includes rare compilation tracks, selections from the "Obsession and Progress" cassette (Bloodlust!, 1996), "The Final Moments" cassette (Third Force / Isolation, 1997), and live recordings from 1995 and 1996.
One of the only acts from the 90's to originate in the industrial underground, cross over into the rhythmic noise enclave of the early 2000s and attain a leadership role in the contemporary live techno apparatus with total authenticity.
4xLP packaged in a deluxe wide spine jacket with individual disco sleeves for each record with multiple metallic ink printing. Edition of 290 copies on clear vinyl.
Fragmentation by Orphx
Label: Hospital Productions
Format: 4LP
Tags: industrial, rhythmic noise, ebm, noise, orphx, hospital productions


text:
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
  <component name="ChangeListManager">
    <list default="true" id="67767334-8208-4929-87a7-7974ef411358" name="默认的" comment="" />
    <ignored path="week3.iws" />
    <ignored path=".idea/workspace.xml" />
    <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
    <option name="TRACKING_ENABLED" value="true" />
    <option name="SHOW_DIALOG" value="false" />
    <option name="HIGHLIGHT_CONFLICTS" value="true" />
    <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
    <option name="LAST_RESOLUTION" value="IGNORE" />
  </component>
  <component name="ChangesViewManager" flattened_view="true" show_ignored="false" />
  <component name="CreatePatchCommitExecutor">
    <option name="PATCH_PATH" value="" />
  </component>
  <component name="ExecutionTargetManager" SELECTED_TARGET="default_target" />
  <component name="FavoritesManager">
    <favorites_list name="week3" />
  </component>
  <component name="FileEditorManager">
    <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
      <file leaf-file-name="demo1-过滤函数.html" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/day2/demo1-过滤函数.html">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="-2092">
              <caret line="33" column="32" selection-start-line="33" selection-start-column="32" selection-end-line="33" selection-end-column="32" />
              <folding />
            </state>
          </provider>
        </entry>
      </file>
      <file leaf-file-name="过滤函数.html" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/day2/过滤函数.html">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="540">
              <caret line="18" column="63" selection-start-line="18" selection-start-column="63" selection-end-line="18" selection-end-column="63" />
              <folding />
            </state>
          </provider>
        </entry>
      </file>
      <file leaf-file-name="自定义过滤器.html" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/day2/自定义过滤器.html">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="240">
              <caret line="8" column="26" selection-start-line="8" selection-start-column="26" selection-end-line="8" selection-end-column="26" />
              <folding />
            </state>
          </provider>
        </entry>
      </file>
      <file leaf-file-name="自定义过滤器-转换内容.html" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/day2/自定义过滤器-转换内容.html">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="870">
              <caret line="32" column="39" selection-start-line="32" selection-start-column="39" selection-end-line="32" selection-end-column="39" />
              <folding />
            </state>
          </provider>
        </entry>
      </file>
      <file leaf-file-name="demo2-字符串转换.html" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/day2/demo2-字符串转换.html">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="810">
              <caret line="27" column="7" selection-start-line="27" selection-start-column="7" selection-end-line="27" selection-end-column="7" />
              <folding />
            </state>
          </provider>
        </entry>
      </file>
      <file leaf-file-name="demo3-表单元素.html" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/day2/demo3-表单元素.html">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="825">
              <caret line="41" column="5" selection-start-line="41" selection-start-column="5" selection-end-line="41" selection-end-column="5" />
              <folding />
            </state>
          </provider>
        </entry>
      </file>
      <file leaf-file-name="demo4-表单元素.html" pinned="false" current-in-tab="true">
        <entry file="file://$PROJECT_DIR$/day2/demo4-表单元素.html">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="150">
              <caret line="23" column="6" selection-start-line="23" selection-start-column="6" selection-end-line="23" selection-end-column="6" />
              <folding />
            </state>
          </provider>
        </entry>
      </file>
      <file leaf-file-name="demo4-级联菜单.html" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/day2/demo4-级联菜单.html">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="540">
              <caret line="21" column="23" selection-start-line="21" selection-start-column="23" selection-end-line="21" selection-end-column="23" />
              <folding />
            </state>
          </provider>
        </entry>
      </file>
      <file leaf-file-name="demo4-三级联菜单.html" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/day2/demo4-三级联菜单.html">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="450">
              <caret line="18" column="17" selection-start-line="18" selection-start-column="17" selection-end-line="18" selection-end-column="17" />
              <folding />
            </state>
          </provider>
        </entry>
      </file>
      <file leaf-file-name="form_valid_给学生.html" pinned="false" current-in-tab="false">
        <entry file="file://$PROJECT_DIR$/day2/form_valid_给学生.html">
          <provider selected="true" editor-type-id="text-editor">
            <state relative-caret-position="90">
              <caret line="3" column="26" selection-start-line="3" selection-start-column="26" selection-end-line="3" selection-end-column="26" />
              <folding>
                <element signature="n#style#0;n#head#0;n#html#0;n#!!top" expanded="false" />
              </folding>
            </state>
          </provider>
        </entry>
      </file>
    </leaf>
  </component>
  <component name="FileTemplateManagerImpl">
    <option name="RECENT_TEMPLATES">
      <list>
        <option value="HTML File" />
      </list>
    </option>
  </component>
  <component name="IdeDocumentHistory">
    <option name="CHANGED_PATHS">
      <list>
        <option value="$PROJECT_DIR$/css/demo1.html" />
        <option value="$PROJECT_DIR$/demo1.html" />
        <option value="$PROJECT_DIR$/demo2.html" />
        <option value="$PROJECT_DIR$/demo3.html" />
        <option value="$PROJECT_DIR$/demo5.html" />
        <option value="$PROJECT_DIR$/demo6.html" />
        <option value="$PROJECT_DIR$/demo4.html" />
        <option value="$PROJECT_DIR$/demo7.html" />
        <option value="$PROJECT_DIR$/创建主模块.html" />
        <option value="$PROJECT_DIR$/创建一组对象.html" />
        <option value="$PROJECT_DIR$/helloWorld.html" />
        <option value="$PROJECT_DIR$/day2.html" />
        <option value="$PROJECT_DIR$/day2/demo1-过滤函数.html" />
        <option value="$PROJECT_DIR$/day2/demo2-字符串转换.html" />
        <option value="$PROJECT_DIR$/day2/demo3-表单元素.html" />
        <option value="$PROJECT_DIR$/day2/demo4-表单元素.html" />
        <option value="$PROJECT_DIR$/day2/demo4-级联菜单.html" />
        <option value="$PROJECT_DIR$/day2/demo4-三级联菜单.html" />
        <option value="$PROJECT_DIR$/day2/form_valid_给学生.html" />
        <option value="$PROJECT_DIR$/day2/过滤函数.html" />
        <option value="$PROJECT_DIR$/day2/自定义过滤器.html" />
        <option value="$PROJECT_DIR$/day2/自定义过滤器-转换内容.html" />
      </list>
    </option>
  </component>
  <component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
  <component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
  <component name="JsGulpfileManager">
    <detection-done>true</detection-done>
    <sorting>DEFINITION_ORDER</sorting>
  </component>
  <component name="ProjectFrameBounds">
    <option name="x" value="-8" />
    <option name="y" value="-8" />
    <option name="width" value="1936" />
    <option name="height" value="1056" />
  </component>
  <component name="ProjectLevelVcsManager" settingsEditedManually="false">
    <OptionsSetting value="true" id="Add" />
    <OptionsSetting value="true" id="Remove" />
    <OptionsSetting value="true" id="Checkout" />
    <OptionsSetting value="true" id="Update" />
    <OptionsSetting value="true" id="Status" />
    <OptionsSetting value="true" id="Edit" />
    <OptionsSetting value="true" id="添加" />
    <OptionsSetting value="true" id="移除" />
    <OptionsSetting value="true" id="签出" />
    <OptionsSetting value="true" id="更新" />
    <OptionsSetting value="true" id="状态" />
    <OptionsSetting value="true" id="编辑" />
    <ConfirmationsSetting value="0" id="添加" />
    <ConfirmationsSetting value="0" id="移除" />
  </component>
  <component name="ProjectView">
    <navigator currentView="ProjectPane" proportions="" version="1">
      <flattenPackages />
      <showMembers />
      <showModules />
      <showLibraryContents />
      <hideEmptyPackages />
      <abbreviatePackageNames />
      <autoscrollToSource />
      <autoscrollFromSource />
      <sortByType />
      <manualOrder />
      <foldersAlwaysOnTop value="true" />
    </navigator>
    <panes>
      <pane id="ProjectPane">
        <subPane>
          <PATH>
            <PATH_ELEMENT>
              <option name="myItemId" value="week3" />
              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
            </PATH_ELEMENT>
          </PATH>
          <PATH>
            <PATH_ELEMENT>
              <option name="myItemId" value="week3" />
              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
            </PATH_ELEMENT>
            <PATH_ELEMENT>
              <option name="myItemId" value="week3" />
              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
            </PATH_ELEMENT>
            <PATH_ELEMENT>
              <option name="myItemId" value="day2" />
              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
            </PATH_ELEMENT>
          </PATH>
          <PATH>
            <PATH_ELEMENT>
              <option name="myItemId" value="week3" />
              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
            </PATH_ELEMENT>
            <PATH_ELEMENT>
              <option name="myItemId" value="week3" />
              <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
            </PATH_ELEMENT>
          </PATH>
        </subPane>
      </pane>
      <pane id="Scratches" />
      <pane id="Scope" />
    </panes>
  </component>
  <component name="PropertiesComponent">
    <property name="settings.editor.selected.configurable" value="preferences.sourceCode" />
    <property name="settings.editor.splitter.proportion" value="0.2" />
    <property name="WebServerToolWindowFactoryState" value="false" />
    <property name="HbShouldOpenHtmlAsHb" value="" />
    <property name="DefaultHtmlFileTemplate" value="HTML File" />
    <property name="last_opened_file_path" value="$PROJECT_DIR$/../第三周/课堂案例day2" />
  </component>
  <component name="RecentsManager">
    <key name="MoveFile.RECENT_KEYS">
      <recent name="D:\study\manth3\week3\day1" />
      <recent name="D:\study\manth3\week3" />
    </key>
    <key name="CopyFile.RECENT_KEYS">
      <recent name="D:\study\manth3\week3\day2" />
      <recent name="D:\study\manth3\week3\day2\css" />
      <recent name="D:\study\manth3\week3\day2\images" />
      <recent name="D:\study\manth3\week3\day2\js" />
      <recent name="D:\study\manth3\week3\images" />
    </key>
  </component>
  <component name="RunManager" selected="JavaScript Debug.创建一组对象.html">
    <configuration default="false" name="创建一组对象.html" type="JavascriptDebugType" factoryName="JavaScript Debug" temporary="true" nameIsGenerated="true" uri="http://localhost:63342/week3/day1/创建一组对象.html">
      <method />
    </configuration>
    <configuration default="true" type="DartCommandLineRunConfigurationType" factoryName="Dart Command Line Application">
      <method />
    </configuration>
    <configuration default="true" type="DartTestRunConfigurationType" factoryName="Dart Test">
      <method />
    </configuration>
    <configuration default="true" type="JavaScriptTestRunnerKarma" factoryName="Karma">
      <config-file value="" />
      <node-interpreter value="project" />
      <envs />
      <method />
    </configuration>
    <configuration default="true" type="JavascriptDebugType" factoryName="JavaScript Debug">
      <method />
    </configuration>
    <configuration default="true" type="NodeJSConfigurationType" factoryName="Node.js" path-to-node="project" working-dir="">
      <method />
    </configuration>
    <configuration default="true" type="cucumber.js" factoryName="Cucumber.js">
      <option name="cucumberJsArguments" value="" />
      <option name="executablePath" />
      <option name="filePath" />
      <method />
    </configuration>
    <configuration default="true" type="js.build_tools.gulp" factoryName="Gulp.js">
      <node-interpreter>project</node-interpreter>
      <node-options />
      <gulpfile />
      <tasks />
      <arguments />
      <envs />
      <method />
    </configuration>
    <configuration default="true" type="js.build_tools.npm" factoryName="npm">
      <command value="run-script" />
      <scripts />
      <node-interpreter value="project" />
      <envs />
      <method />
    </configuration>
    <configuration default="true" type="mocha-javascript-test-runner" factoryName="Mocha">
      <node-interpreter>project</node-interpreter>
      <node-options />
      <working-directory />
      <pass-parent-env>true</pass-parent-env>
      <envs />
      <ui>bdd</ui>
      <extra-mocha-options />
      <test-kind>DIRECTORY</test-kind>
      <test-directory />
      <recursive>false</recursive>
      <method />
    </configuration>
    <list size="1">
      <item index="0" class="java.lang.String" itemvalue="JavaScript Debug.创建一组对象.html" />
    </list>
    <recent_temporary>
      <list size="1">
        <item index="0" class="java.lang.String" itemvalue="JavaScript Debug.创建一组对象.html" />
      </list>
    </recent_temporary>
  </component>
  <component name="ShelveChangesManager" show_recycled="false">
    <option name="remove_strategy" value="false" />
  </component>
  <component name="SvnConfiguration">
    <configuration />
  </component>
  <component name="TaskManager">
    <task active="true" id="Default" summary="Default task">
      <changelist id="67767334-8208-4929-87a7-7974ef411358" name="默认的" comment="" />
      <created>1476666269489</created>
      <option name="number" value="Default" />
      <option name="presentableId" value="Default" />
      <updated>1476666269489</updated>
      <workItem from="1476666270845" duration="7847000" />
      <workItem from="1476686251310" duration="7829000" />
      <workItem from="1476695941543" duration="4861000" />
      <workItem from="1476752203692" duration="25324000" />
    </task>
    <servers />
  </component>
  <component name="TimeTrackingManager">
    <option name="totallyTimeSpent" value="45861000" />
  </component>
  <component name="ToolWindowManager">
    <frame x="-8" y="-8" width="1936" height="1056" extended-state="6" />
    <editor active="true" />
    <layout>
      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.16666667" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
      <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
      <window_info id="版本控制" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
      <window_info id="调试" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.3716143" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
      <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
      <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
      <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
      <window_info id="运行" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
      <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
      <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
      <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
      <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
      <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
      <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
      <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
      <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
    </layout>
    <layout-to-restore>
      <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
      <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
      <window_info id="调试" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.3716143" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
      <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
      <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
      <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="8" side_tool="true" content_ui="tabs" />
      <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
      <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
      <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
      <window_info id="运行" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
      <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.16666667" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
      <window_info id="版本控制" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
      <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
      <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
      <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
      <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
      <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
      <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
    </layout-to-restore>
  </component>
  <component name="Vcs.Log.UiProperties">
    <option name="RECENTLY_FILTERED_USER_GROUPS">
      <collection />
    </option>
    <option name="RECENTLY_FILTERED_BRANCH_GROUPS">
      <collection />
    </option>
  </component>
  <component name="VcsContentAnnotationSettings">
    <option name="myLimit" value="2678400000" />
  </component>
  <component name="XDebuggerManager">
    <breakpoint-manager />
    <watches-manager />
  </component>
  <component name="editorHistoryManager">
    <entry file="file://$PROJECT_DIR$/day1/demo1.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="390">
          <caret line="13" column="45" selection-start-line="13" selection-start-column="31" selection-end-line="13" selection-end-column="45" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo2.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="720">
          <caret line="24" column="24" selection-start-line="24" selection-start-column="24" selection-end-line="24" selection-end-column="24" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo3.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="480">
          <caret line="16" column="40" selection-start-line="16" selection-start-column="40" selection-end-line="16" selection-end-column="40" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo4.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="720">
          <caret line="24" column="14" selection-start-line="24" selection-start-column="14" selection-end-line="24" selection-end-column="14" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo5.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="210">
          <caret line="7" column="23" selection-start-line="7" selection-start-column="23" selection-end-line="7" selection-end-column="23" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/创建主模块.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="510">
          <caret line="17" column="26" selection-start-line="13" selection-start-column="16" selection-end-line="17" selection-end-column="26" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/创建一组对象.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="2340">
          <caret line="78" column="43" selection-start-line="78" selection-start-column="43" selection-end-line="78" selection-end-column="43" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/helloWorld.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="0">
          <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo6.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="630">
          <caret line="21" column="37" selection-start-line="21" selection-start-column="32" selection-end-line="21" selection-end-column="37" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo7.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="1560">
          <caret line="52" column="35" selection-start-line="52" selection-start-column="16" selection-end-line="52" selection-end-column="35" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo1.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="390">
          <caret line="13" column="45" selection-start-line="13" selection-start-column="31" selection-end-line="13" selection-end-column="45" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo2.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="720">
          <caret line="24" column="24" selection-start-line="24" selection-start-column="24" selection-end-line="24" selection-end-column="24" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo3.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="0">
          <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo4.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="720">
          <caret line="24" column="14" selection-start-line="24" selection-start-column="14" selection-end-line="24" selection-end-column="14" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo5.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="210">
          <caret line="7" column="23" selection-start-line="7" selection-start-column="23" selection-end-line="7" selection-end-column="23" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo6.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="960">
          <caret line="32" column="14" selection-start-line="32" selection-start-column="14" selection-end-line="32" selection-end-column="14" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo7.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="360">
          <caret line="12" column="42" selection-start-line="12" selection-start-column="42" selection-end-line="12" selection-end-column="42" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo1.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="420">
          <caret line="14" column="33" selection-start-line="14" selection-start-column="33" selection-end-line="14" selection-end-column="33" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo2.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="450">
          <caret line="15" column="19" selection-start-line="15" selection-start-column="19" selection-end-line="15" selection-end-column="19" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo3.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="750">
          <caret line="25" column="31" selection-start-line="25" selection-start-column="31" selection-end-line="25" selection-end-column="31" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo4.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="1110">
          <caret line="37" column="16" selection-start-line="37" selection-start-column="16" selection-end-line="37" selection-end-column="16" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo5.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="0">
          <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/js/angular-1.5.5/docs/js/docs.js" />
    <entry file="file://$PROJECT_DIR$/day1/js/angular.min.js">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="0">
          <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/css/bootstrap.min.css">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="0">
          <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo1.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="390">
          <caret line="13" column="45" selection-start-line="13" selection-start-column="31" selection-end-line="13" selection-end-column="45" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo2.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="0">
          <caret line="24" column="24" selection-start-line="24" selection-start-column="24" selection-end-line="24" selection-end-column="24" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day2.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="120">
          <caret line="4" column="16" selection-start-line="4" selection-start-column="11" selection-end-line="4" selection-end-column="16" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day2/js/angular.min.js">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="0">
          <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day2/css/bootstrap.min.css">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="0">
          <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo3.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="480">
          <caret line="16" column="40" selection-start-line="16" selection-start-column="40" selection-end-line="16" selection-end-column="40" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo4.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="720">
          <caret line="24" column="14" selection-start-line="24" selection-start-column="14" selection-end-line="24" selection-end-column="14" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo5.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="210">
          <caret line="7" column="23" selection-start-line="7" selection-start-column="23" selection-end-line="7" selection-end-column="23" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/创建主模块.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="165">
          <caret line="17" column="26" selection-start-line="13" selection-start-column="16" selection-end-line="17" selection-end-column="26" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/创建一组对象.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="465">
          <caret line="78" column="43" selection-start-line="78" selection-start-column="43" selection-end-line="78" selection-end-column="43" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/helloWorld.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="360">
          <caret line="12" column="7" selection-start-line="12" selection-start-column="7" selection-end-line="12" selection-end-column="7" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo7.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="315">
          <caret line="41" column="35" selection-start-line="41" selection-start-column="35" selection-end-line="41" selection-end-column="35" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day1/demo6.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="225">
          <caret line="21" column="37" selection-start-line="21" selection-start-column="32" selection-end-line="21" selection-end-column="37" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day2/demo4-三级联菜单.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="450">
          <caret line="18" column="17" selection-start-line="18" selection-start-column="17" selection-end-line="18" selection-end-column="17" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day2/demo4-级联菜单.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="540">
          <caret line="21" column="23" selection-start-line="21" selection-start-column="23" selection-end-line="21" selection-end-column="23" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day2/form_valid_给学生.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="90">
          <caret line="3" column="26" selection-start-line="3" selection-start-column="26" selection-end-line="3" selection-end-column="26" />
          <folding>
            <element signature="n#style#0;n#head#0;n#html#0;n#!!top" expanded="false" />
          </folding>
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day2/demo1-过滤函数.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="-2092">
          <caret line="33" column="32" selection-start-line="33" selection-start-column="32" selection-end-line="33" selection-end-column="32" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day2/过滤函数.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="540">
          <caret line="18" column="63" selection-start-line="18" selection-start-column="63" selection-end-line="18" selection-end-column="63" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day2/自定义过滤器.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="240">
          <caret line="8" column="26" selection-start-line="8" selection-start-column="26" selection-end-line="8" selection-end-column="26" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day2/自定义过滤器-转换内容.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="870">
          <caret line="32" column="39" selection-start-line="32" selection-start-column="39" selection-end-line="32" selection-end-column="39" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day2/demo2-字符串转换.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="810">
          <caret line="27" column="7" selection-start-line="27" selection-start-column="7" selection-end-line="27" selection-end-column="7" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day2/demo3-表单元素.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="825">
          <caret line="41" column="5" selection-start-line="41" selection-start-column="5" selection-end-line="41" selection-end-column="5" />
          <folding />
        </state>
      </provider>
    </entry>
    <entry file="file://$PROJECT_DIR$/day2/demo4-表单元素.html">
      <provider selected="true" editor-type-id="text-editor">
        <state relative-caret-position="150">
          <caret line="23" column="6" selection-start-line="23" selection-start-column="6" selection-end-line="23" selection-end-column="6" />
          <folding />
        </state>
      </provider>
    </entry>
  </component>
</project>


text:
the maginc bullet
Whodunnit xix: Truth vs. Agenda (c)
Before I let Salandria go, another episode comes to mind. In January 2012, Arlen Specter took him to lunch. Specter, who would serve 30 years in the U.S. Senate, but he is best known to conspiracists, like Salandria, for creating the "magic bullet" theory while assistant counsel to the Warren Commission, which they consider the lynch pin of the cover-up. Both Specter and Salandria were in their 80s when they dined – and Specter would die of cancer within the year. To me it seemed like Moby Dick asking Ahab out for a farewell bowl of plankton.
Some, who have read Salandria's account of this lunch, have interpreted Specter's invitation as his seeking forgiveness, but I don't see it. It isn't apparent from what Salandria reports. It doesn't fit what I know of Specter's character. And if he needed forgiveness from anyone, it was Anita Hill for what he did to her during Clarence Thomas's confirmation hearings. The meeting Salandria describes seems friendly, and at the end, Specter left smiling. But mainly it consisted of Specter's single-sentence questions (What was the reason for the assassination? Do you talk to Mark Lane often?) and Salandria's multi-paragraph answers.
During their conversation, Salandria volunteers he told Specter that, had he been given his "assignment" "to frame Lee Harvey Oswald as Kennedy's killer," he would have acted similarly. "As a lawyer I would have been obliged to serve the best interest of my client, the United States government." This is an astonishing admission. Salandria in not only wrong in his understanding of a lawyer's role, he hovers somewhere between the comically and the criminally wrong.
The ABA's Code of Ethics forbids a lawyer representing someone before a tribunal to offer evidence he knows to be false." A lawyer may also refuse to offer evidence he "reasonably believes is false." And if he later learns evidence he offered was false, he must take "remedial measures." His obligation to "the integrity of the adjudicative process" outweighs even his duty to his client. (True, the Warren Commission may not have constituted a "tribunal," but I doubt Salandria was making this distinction.) That someone, who was himself a member of the Bar, believed it proper for an attorney to manufacture evidence to "frame" someone of a crime is as hard to believe as… Well, as hard to believe as someone's finding Rose Cheramie a repository for the truth. Salandria ends his article by quoting Sophocles: "Truly, to tell lies is not honorable; but where truth entails tremendous ruin, to speak dishonorably is pardonable." This opens the door quite a bit to "the end justifies the means" thinking; and I cannot help believing, given what I have seen of Salandria's arguments, that while he thinks he is accounting for Specter's behavior, he is, in fact, accounting for his own.
When Arlen Specter left smiling, it may not have been because he felt redeemed. It may have been because he had confirmed he had lunched with someone with views unworthy of serious consideration.


Today I saw a family on O'Connell street having just participated in the Rally for Life parade in the city centre. They were the image of the catholic family, about 4 kids with mammy pregnant with another and all of them wearing pro-life placards. This really got to me and that's why I'm deviating away from my usual topics today and giving my two cents worth on what's going on with the campaign to #repealthe8th, whatever it may be worth.
There was a time when I was pro-life. I turned to a very extremist form of Christianity early in my teenage years and so was sucked in hook, line and sinker by the images of late-term abortions and cut up babies that were born crying. It wasn't until I got to college and began to look at it from an actual medical and societal standpoint that I realised how wrong I was and I am now very much pro-choice.
During my journey to my current thought on the issue, I got to a "I wouldn't have one myself but I wouldn't judge anyone who did" state of mind and I've met many others who are in the same place. But I realise now, much to my shame, that I was still being judgemental by saying that. I was implying that I was in a better position than those who would take that path and that I was in some way morally superior to them. In other words, I was being totally up myself. This mindset also separated me from the issue and I felt that the campaign to make abortion freely available in Ireland was something that I wasn't part of and that's something I regret. The thing is, abortion happens in Ireland whither our government allows it or not. But we, the society of Ireland, who pride ourselves on being a loving group of people and with the recent change in the marriage laws, a very open and progressive one too, are turning a blind eye because sure they can always go to England and they can deal with it there!
But it's not as easy as that. For centuries, 'mother Ireland' has been a present motif in our literature, our culture and our society at large. The people who put themselves forward as pro-life subscribe to this image of the beautiful and natural persona of the pregnant woman. She has no shoes for some reason and is very fond of long, white flowing dresses and has long wavy red hair which reaches her perfectly formed third-trimester baby bump. Society paints this picture of pregnancy as a magical and perfect state where, besides the birth (thanks Eve), there is no pain or discomfort and everyone involved is both physically and mentally secure and nothing will ever go wrong. This is why that family I saw today bothered me so much. It is absolutely fine that those parents are not going to need the procedure, they were lucky to have everything go their way. But there are people all over the country who are not as lucky and who have been denied the care they needed because they didn't fit into the perfect mother model and wanted or needed to end their pregnancies. Women and trans-men who cannot afford to go abroad or who don't have the papers to travel. Those who develop fatal foetal abnormalities and have to carry their dying babies to full term. Those in abusive relationships who don't want to bring a child into their reality. When the people in power are so far removed from the lives their decisions are affecting, how can we expect change to happen on its own? It can't. Most of the people in the chambers, a large portion of the voting public, they will never have to go through this. But the people who are forced to go through a pregnancy they don't want or may kill them, how are we going to answer their cries? Right now we're telling hem, "sure you can do it, just don't do it here". It's disgraceful, it's immoral and it needs to change.


text:
package com.atteo.jello.store;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;

import com.atteo.jello.Jello;
import com.google.inject.Inject;
import com.google.inject.Singleton;
import com.google.inject.name.Named;

@Singleton
public class PagedFileRAF implements PagedFile {
	final File file;

	private boolean readOnly;
	private final int pageSize;
	private int pages;
	private RandomAccessFile raf;

	@Inject
	PagedFileRAF(@Named("pageSize") final short pageSize,
			@Named("fullpath") final String fullpath) {
		this.pageSize = pageSize;

		file = new File(fullpath);
	}

	public int addPages(final int count) {
		pages += count;
		try {
			raf.setLength(pages * pageSize);
		} catch (final IOException e) {
			e.printStackTrace();
		}
		return pages - 1;
	}

	public void close() {
		try {
			raf.close();
		} catch (final IOException e) {
			e.printStackTrace();
		}
	}

	public boolean create() {
		file.getParentFile().mkdirs();
		if (!file.getParentFile().exists())
			return false;
		try {
			file.createNewFile();
		} catch (final IOException e) {
			e.printStackTrace();
			return false;
		}

		return true;
	}

	public boolean exists() {
		return file.exists();
	}

	public long getFileLength() {
		long len = 0;
		try {
			len = raf.length();
		} catch (final IOException e) {
			e.printStackTrace();
		}
		return len;
	}

	public int getPageCount() {
		return pages;
	}

	public boolean isReadOnly() {
		return readOnly;
	}

	public int open() {
		if (!exists())
			return Jello.OPEN_FAILED;

		if (!file.canRead())
			return Jello.OPEN_FAILED;

		readOnly = !file.canWrite();

		String mode;
		if (readOnly)
			mode = "r";
		else
			mode = "rw";

		try {
			raf = new RandomAccessFile(file, mode);
		} catch (final FileNotFoundException e1) {
			e1.printStackTrace();
			return Jello.OPEN_FAILED;

		}

		try {
			pages = (int) (raf.length() / pageSize);
		} catch (final IOException e) {
			e.printStackTrace();
			return Jello.OPEN_FAILED;

		}

		if (readOnly)
			return Jello.OPEN_READONLY;
		else
			return Jello.OPEN_SUCCESS;
	}

	public void readPage(final Page page) {
		try {
			raf.seek(page.getId() * pageSize);
			raf.readFully(page.getData());
		} catch (final IOException e) {
			e.printStackTrace();
		}

	}

	public void remove() {
		file.delete();
	}

	public void removePages(final int count) {
		pages -= count;
		if (pages < 0)
			pages = 0;
		try {
			raf.setLength(pages * pageSize);
		} catch (final IOException e) {
			e.printStackTrace();
		}

	}

	public void syncAll() {

	}

	public void syncPages(final int startPage, final int count) {

	}

	public void writePage(final Page page) {
		try {
			raf.seek(page.getId() * pageSize);
			raf.write(page.getData());
		} catch (final IOException e) {
			e.printStackTrace();
		}
	}

}