Sep. 24, 2018, under software dev, Web dev

I’ve published my first contribution to the FOSS community on github: HumanMathTest implements a math test ‘bot deterrent PHP class for use in online forms.
This class is used to create an image to be included in an online form that shows a simple math test the visitor must solve when submitting the form. The operands and operation are stored in the $_SESSION data for the page. After submitting the form, the visitor’s answer is checked by calling the verify() method to compare their entry vs. the session data. If an error is found, the form submission should be rejected.
The demo page illustrates many of the options available, and includes a link to download the fully commented source code, including that of the demo and example pages.
To support my work, please buy a pre-publication copy of Race To Space. For more info about the project, see the Race To Space site, subscribe there to be kept abreast of its progress.
We are going to run out of oil. Before that happens, we MUST have a replacement source of energy and feed stock for our civilization that has become so dependent on plastic. The time to act is NOW!! Please visit SpacePowerNow.org to help build a solution.
more...
Jul. 03, 2018, under bad business, bootstrap finance, disturbing, really???
 Purple turtle figurine
I recently sold a small item on eBay: I bought a 10-piece lot of small turtle figurines a few years ago for $40, so the cost for each item is $4.00. I had them listed for $4.95 each, plus shipping, so my gross margin on each sale would be $0.95 – not a lot, but at least it looked like a profit.
At that price, I couldn’t offer free shipping. I listed the shipping and handling as $1.00 for handling (to cover the cost of a box, packing material, tape, etc.) plus the actual cost of shipping via the customer’s selected method.
The customer paid $16.36 to buy this $4.95 item – eBay added $11.41 for shipping and handling to the bill, which astounded me. As it turns out, though, that wasn’t out of line, considering the actual cost of sending the package from Wellsville to Tulsa, Oklahoma via FedEx Home Delivery was $10.39 (after eBay’s bulk discount): The assessed shipping and handling charges left me with $1.02 to cover the cost of materials.
Adding the gross margin from the sale, plus the handling fee, it would appear I gained $1.97 from the transaction. The problem, though, is that there are fees involved: eBay charges a 10% “final value” fee for sales at this level, so I had to pay them a commission of $0.50 to make the sale. Fair enough, but now my gross margin is $0.45. Then, PayPal charges 2.9% plus $0.30 per transaction to process the payment – so PayPal collected $0.77. Now my gross margin has disappeared, and I’ve already lost $0.32 on the deal – and that’s assuming my time has zero value, and there were no costs in packing the figurine to send it. Using those assumptions, I’ve still had a net income of $0.70 because of the handling charges that the customer paid.
However, today the last nail in the coffin arrived: eBay’s invoice for the month of June shows they have assessed a $1.14 “final value” fee on the SHIPPING CHARGES! Ignoring everything else, that means they charged $0.12 more for their profit on my mailing the package to the customer than I received as a handling charge.
Together with the gross loss from the transaction, the loss from the shipping charges means I had a net LOSS on the $4.95 sale of $0.44. No business can survive with a 10% loss on every deal. That plan is fundamentally flawed, and is the reason I will no longer be trying to sell things on eBay.
I tried sending them an email about the situation, but I expect it will bounce…
more...
May. 08, 2018, under call to action, opinions, philosophy, tax evils
Everything.
How does this happen? A buyer and seller come to agreement on the cost of something. The buyer gets out his money to pay for it, and the seller says “Wait, I have to add the sales tax.”
How much is the sales tax? Depending on where the transaction is taking place, the state, county, town, city, and who knows what other government, wants “their” percentage added on. What percentage? Well, that depends on where you are – and how many of those governments are reaching into your wallet to take your money, and how much each of them thinks it can get away with. For example, in New York City, the rate is 8.875% – 4% going to New York state, 4.5% to the city, and 0.375% for the Metropolitan Commuter Transportation District – and that’s not the highest rate in the country: According to the Tax Foundation, that ignoble title falls on Birmingham and Montgomery, Alabama, each with a 10% tax rate.
We now return to our regularly scheduled transaction, already in progress. The seller announces a new price, not the one that had previously been agreed on, but a higher one that the buyer has to cover. The hapless buyer pays the new price, feeling shafted, and the seller, if he has any morals at all, feels guilty about taking more than they’d agreed on in the first place.
Admittedly, the seller doesn’t get to keep any of the additional money he collected as sales tax, he just has to hold onto it, keep track of it, and at the end of the month, or quarter, or whatever the local rules say, promptly send it off to the government(s) in whose name he collected the tax.
Do you see something else wrong with this picture? How much does the seller get paid for collecting, keeping track of, and sending the sales tax to the government(s)?
Zero.
That’s right, the seller is an unpaid tax collector, extorting (tax) money from the buying public without receiving anything in return. Why, then, would anyone commit such a crime? Because if they don’t, the government(s) will confiscate their business, impose fines, or send the merchant to jail: The seller, under duress, is paying protection money to the government(s) to keep them off his back.
Now we have states arguing that because a buyer is in their state, that gives them jurisdiction over an Internet seller who is not in their state: They are trying to forcibly deputize every merchant in the country as their tax collectors – without pay. Instead of being a non-consensual unpaid worker (i.e., slave) for one, two or three jurisdictions as they are now, they want to have every business in the country collecting, counting and sending money to any jurisdiction a buyer happens to come from. That would be like saying if someone from Omaha got off a cruise ship and walked into a shop in Key West to buy something, the Florida merchant would have to collect and manage Nebraska sales tax. In addition to being a bookkeeping nightmare for American merchants, it will turn buyers to overseas sellers who don’t have these ludicrious rules to follow. This has to be stopped, or it’s going to destroy the American economy.
As of today, May 8, 2018, eBay has a petition they are circulating to gather voices against states being able to impose taxes on Internet merchants who are not physically located within their jurisdiction. Please go to https://t.co/JMhYbuZvlV to add your signature, it will only take a minute. The money you save will be your own!
How did this all get started?
Some time in the early 1930’s, during the USA’s Great Depression, many state governments were in danger of going bankrupt. In order to avoid such a failure, they would either have to cut expenses to stay within a balanced budget as a business would (heaven forbid!), or raise taxes. Raising existing taxes could only be done on a limited basis before a tax revolt took place, what they were looking for was something with a broad base, so lots of people could be taxed “just a little bit” but they’d make up for it in volume. A direct tax on labor didn’t seem like a good idea because it was feared it would endanger productivity. Instead, some genius in West Virginia or Kentucky came up with the idea of a tax on the sale of goods where every merchant in the state was deputized as a tax collector, whether they wanted to be or not. For the states, it was a win-win situation: They got lots of money so they didn’t have to worry about nuisances like balancing a budget, and they didn’t have to pay anybody to collect it. Once the pioneering states pulled it off, and got away with it, the idea spread like wildfire until nearly every state in the union has a sales tax. And if the state can get away with it, why not the county, or the city, or some other synthetic jurisdiction? After all, once the merchants had been convinced they had to collect the sales tax for the state, how could they object to collecting taxes for more localized governments?
It all stems from the “divine right of kings” (assumed by any government in power) to impose whatever laws and taxes on their subjects that they feel are appropriate. The fact it was elected officials who enacted sales tax laws does not make it a voluntary choice of the populace: It was the government adding a new cost onto the public without their consent: Did anyone vote for a legislator whose platform included adding a new type of tax on their life? No, it is, in fact, taxation without representation – it was an act undertaken by the government, for the government’s sole benefit, without asking for agreement from the governed.
Taxes, per se, are a crime against the populace, committed by the government imposing them: Without a prior agreement, stating what was being purchased, for how much, and under what terms, the government presents a demand for money to the subject being taxed. That person may decline to pay the demand on the grounds that they never agreed to it in the first place. However, the government will impose whatever sanctions it feels are necessary to collect the money until, under duress, the subject pays. This is a classic case of one entity initiating the use of force to cause another to do something against their will, or otherwise deprive them of their life, liberty and pursuit of happiness. That is the fundamental definition of the commission of a crime. I cannot imagine a rational argument wherein the mere fact that the action is undertaken by a government makes it not a crime: It may be lawful – conveniently, since the government wrote the law – but it is still a crime.
But, you say, the government has to have money to pay for essential services!
If the services are essential, people will pay for them when they use them if they are not already being subsidized, and therefore expected to be “free.” (Maybe railroads would still be viable if “free” roads weren’t sucking all of the traffic off them.) There are plenty of (business) models that can be used as templates for how to do this, even within the governmental system itself: Every toll road in the country adds more to the government coffers than it takes out. Water and sewer services are metered and paid for proportional to use. Similarly, if people bought police and fire department insurance, the cost of calamities could be spread across the populace without the imposition of taxes. Even national defense could be handled the same way: The government could offer broad-based “defense insurance” with a mix of services, or people could selectively buy “army insurance” or “navy insurance” or “air force insurance” depending on who they think is going to provide the best defense for the country. (I suspect the real “danger” with such a plan – from a government perspective – is that with such an option, people might not buy military insurance at all, and then we’d have to all just get along instead of parading our weapons systems all over the globe.)
Governments should be providing their services within a balanced budget just as any other corporate entity is required to. If a government wants to provide an unprofitable service, such as underwriting the cost of housing for disadvantaged families, it should be providing that service from the profits it makes on the other services it provides. Using taxes to arbitrarily pay for programs leads to spending without contemplation of the cost or consequences: It’s really easy to spend money when it’s not yours and you have a blank check in hand.
So, what’s wrong with sales tax? Everything.
If you’d like to support my work, please buy a pre-publication copy of the Race To Space book.
We are going to run out of oil. Before that happens, we MUST have a replacement source of energy and feed stock for our civilization that has become so dependent on plastic. The time to act is NOW!! Please visit SpacePowerNow.org to help build a solution.
more...
Dec. 26, 2017, under bootstrap finance, call to action, goals, progress reports
I’ve finally gotten the initial version of the new site for the Race to Space project up and running. There’s a teaser on the Home page, an opportunity to pre-order copies of the book at discounted prices, and the “Corporate” section has a copy of the investor goodies I first published on the L5 Development Group Web site.
Check out the new site, and if you’re sufficiently intrigued, pre-order a copy of the book.

more...
Dec. 03, 2017, under bootstrap finance, call to action, goals, progress reports
Someone told me they thought the name of my #BlowUpTheTunnel campaign was promoting domestic terrorism – really?!?!?!? That idea was so totally out of my perspective when I built the campaign I couldn’t believe it.
Now the project has grown in scope, and a new name is in order: It’s now called #RaceToSpace. Instead of just resulting in a book describing how to get space colonies and solar power satellites built, there’s a full-length “predictive fiction” action novel thrown into the mix – and maybe a major motion picture, if things go right.
The campaign to underwrite the project is on GoFundMe, donations are now being accepted…

more...
Nov. 30, 2017, under history
I was deeply saddened tonight to find that Dr. Jerry Pournelle had passed away, the world has lost a truly great mind. His science fiction captured my imagination. His Byte columns entertained and informed me. (He would have endorsed my wCapLock utility for making the CapsLock key work like a typewriter does if I’d gotten the marketing together, IIRC – my bad.) The Pournelle political axes is a brilliant insight, one that I frequently cite from my perspective in the top left corner. I’m going to miss the man I’d hoped to meet one day. I’m sorry for everyone who has suffered from this loss.
more...
Oct. 04, 2017, under events, history, space t/e/d
Today is the 60th anniversary of the launch of Sputnik 1, the first satellite humanity put into orbit, launched 4 October 1957 from Baikonur at 10:28pm Moscow time.
It’s a national holiday for those of us who are citizens of the #L5Nation, celebrate it appropriately!
This is picture of the day # 4727 on PhotoByFred.com

From the Space History Newsletter:
Sputnik 1 was the first artificial satellite successfully placed in orbit around the Earth. (The Russian word “Sputnik” means “companion,” “satellite” in the astronomical sense.) In 1885, in his book “Dreams of Earth and Sky,” Konstantin Tsiolkovsky had first described how such a satellite could be launched into a low altitude orbit. Coming at the height of the Cold War, the launch caught the West by surprise, and began the space race by galvanizing interest and action on the part of the American public to support an active role in space research, technology, and exploration.
Sputnik 1 was launched on an R-7 (ICBM) booster from Baikonur Cosmodrome at Tyuratam (370 km southwest of the small town of Baikonur) in Kazakhstan, then part of the former Soviet Union, on 4 October 1957 at 10:28:04 pm, Moscow time. It was the first in a series of four satellites in the Soviet Sputnik program, a contribution to the International Geophysical Year (1957-1958). Three of these satellites (Sputnik 1, 2, and 3) reached Earth orbit.
The Sputnik 1 satellite was a 58.0 cm (14.7 inches) diameter aluminum sphere that weighed 84 kg (184.3 lb) with four whip-like antennas that were 2.4-2.9 meters long. The antennas looked like long “whiskers” pointing to one side. The spacecraft obtained data pertaining to the density of the upper layers of the atmosphere and the propagation of radio signals in the ionosphere. The instruments and electric power sources were housed in a sealed capsule and included transmitters operated at 20.005 and 40.002 MHz (about 15 and 7.5 meters wavelength), the emissions taking place in alternating groups of 0.3 seconds duration. The downlink telemetry included data on temperatures inside and on the surface of the sphere.
Since the sphere was filled with nitrogen under pressure, Sputnik 1 provided the first opportunity for meteoroid detection (no such events were reported), since losses in internal pressure due to meteoroid penetration of the outer surface would have been evident in the temperature data. The satellite transmitters operated for three weeks, until the on-board chemical batteries failed on 26 October 1957, and were monitored with intense interest around the world.
The orbit of the then inactive satellite was later observed optically to decay 92 days after launch (4 January 1958), after having completed about 1400 orbits of the Earth over a cumulative distance traveled of 70 million kilometers. The orbital apogee declined from 947 km after launch to 600 km by 9 December.
The Sputnik 1 booster rocket also reached Earth orbit and was visible from the ground at night as a first magnitude object, while the small but highly polished sphere, barely visible at sixth magnitude, was more difficult to follow optically. Several replicas of the Sputnik 1 satellite can be seen at museums in Russia and another is on display in the Smithsonian National Air and Space Museum in Washington, DC.
We are going to run out of oil. Before that happens, we MUST have a replacement source of energy and feed stock for our civilization that has become so dependent on plastic. The time to act is NOW!! Please visit SpacePowerNow.org to help build a solution.
#BlowUpTheTunnel – visit my campaign and help get my book written!
more...
Sep. 29, 2017, under call to action, progress reports

I launched my #BlowUpTheTunnel GoFundMe campaign, looking for support so I can spend my time writing a book (about a long term energy solution that will create thousands of jobs) instead of going to another 9-to-5. Please check it out now at https://www.gofundme.com/blow-up-the-tunnel and add your support:
We’re going to run out of oil .
You may not see it, your children might not, but your grandchildren probably will.
When we do, two things are going to happen: Everything that depends on cheap, abundant energy will become impossible, and there will be no more plastic. Those electric hand dryers in rest rooms – where do you think the electricity for them comes from? Electric airplanes could provide local air travel – if there’s electricity – but transcontinental or transoceanic travel? Forget about it! Washing machines? Electric stoves? TVs? Cell phones? The Internet? They all need cheap, readily available electricity. “But we actually don’t need plastic” you might say. Really? Look around you, and notice where plastic is used – cars, furniture, cell phones, ATMs, computers, disposable forks, spoons and cups – the list goes on and on and on: I’ll bet there’s not a room in your house that has no plastic in it.
Eventually the demand for oil and oil products is going to exceed the total production capacity. When that happens, civilization will start to collapse. Look forward to widespread starvation … rampant civil unrest … WAR … and if things get really out of hand, a nuclear winter that makes life itself “difficult” anywhere on Earth.
I’m sure you want to save your descendants from this horrible fate. I’m asking you to help me save the future of mankind: There is a way to avert this disaster, but only if we act now:
Fossil fuels – oil, coal, gas – stored the Sun’s energy falling on the Earth in the past; in essence, they are fossilized sunshine. Over the course of the last century and a half, we used up a large portion of the Sun’s energy stored over millions of years, and the gas tank is getting low.
The only feasible energy source to replace oil is large scale direct collection of solar power: The Sun ultimately powers everything on Earth. However, trying to collect solar power at the Earth’s surface to run our entire modern civilization is not practical: In any given location, the Sun is overhead only part of a day. It may be obscured by clouds in the air or snow on the ground. Solar collectors take up a lot of space, and the power consumed by a city far exceeds the amount of solar power falling directly on it.
Because of these problems, solar power is generally ruled out as a viable replacement for oil power. It is those very problems that make it imperative for us to build a network of solar power satellites in orbit, where the Sun always shines, and beam the power to the ground. Only then can we hope to have enough area in the collectors to gather the energy needed by a power-hungry civilization and make it cheaply available.
Oh, and don’t forget: We’re going to need to replace the source of our plastics. How is that going to happen? By using more energy, of course, to power the recycling plants that convert old plastic into new.
Building a constellation of solar power satellites will require a tremendous investment. Thousands, if not millions, of people need to work to make it happen, and the construction is not going to happen overnight. We must get started NOW or the end of civilization predicted above will befall us.
Here’s my problem, and this has happened before, too many times: I’ve gotten to where I can “see the light at the end of the tunnel.” I know if I can keep going, I’ll come out on the other side where I can “stretch my wings and fly” – to put the story together that gets this project off the ground. However, I’m fighting an uphill battle against a strong current that’s sucking everything out of me. The tunnel is channeling the flow, pushing me to return to where I’ve struggled to leave. The pressure is making forward progress impossible. I’m losing my grip. If I don’t do something to relieve the pressure, I’ll end up falling back to where I started – or further behind. It’s time to “#BlowUpTheTunnel,” to shatter the lid that’s holding me down, and to give the current somewhere to go that doesn’t involve eroding my progress.
I’m running this campaign to raise money to finance writing and publishing a book: When it’s done, my thesis will have realistic estimates of the costs involved, how many jobs will be created, and how long it will take to finish. It will define a specific course of action that we can “take to the bank” to get the funding to put the plan in motion.
For those who don’t know me personally, here’s a brief introduction:
I am a Capitalist (spelled with a capital ‘C‘, please) in that I believe that voluntary trade for mutal profit is the only proper form of human interchange: for profit because expecting to gain is a good reason for doing something; mutual profit in that both parties should enjoy a benefit; trade since interchange must be a give and take thing; and voluntary in that both parties must enter into the trade of their own free will or a crime is occurring: Initiation of the use of force (i.e., the victim is not acting voluntarily) can be shown to be the root of any act that is properly considered a crime. Trade and profit need not necessarily be goods or money, for example, the reason you feed your cat and give it a warm bed is for the love you receive in return.
Although I am a Capitalist by philosophical ideals and on moral grounds, I am not a “capitalist” according to the definition Google returns – “a wealthy person who uses money to invest in trade and industry for profit in accordance with the principles of capitalism” – I didn’t start with an inheritance of money to invest. Instead, my wealth derives from the two things that are fundamentally mine, by their nature: my TIME, and my ABILITIES. Using nothing else, I have to trade my life for everything I want or need to maintain my existence.
Most people are basically happy with their lot in life, even without a lot of money and the “life of leisure” that it could theoretically bring. An average person goes to work each day, buys a house, gets married and raises a family, and retires when they get older. The details vary, but the pattern fits the vast majority of the population. They expect to have a job, bills to pay, a fairly comfortable routine where the biggest excitement is going to football games, planning for vacation, or four-wheeling in the mountains.
Unfortunately for me, that doesn’t work: I was born with an eager mind, a fertile imagination and a creative streak that won’t quit, a desire to change the world and build a better future for all of mankind. There are times when I wish I could have a simple life, wanting nothing more than a quiet home, a family and a steady future. Those bouts don’t last long, though – usually because I find something else I want to try.
When I was five years old, I decided I wanted to be an astronaut. I’m still working on it. One way or another, nearly everything I’ve done in my life has been working toward that goal – although sometimes the connection has been “rather obscure.” A more accurate term for my goal would now be that I want to be a “space man” – I want to move off-planet (live in space), and make a lot of money doing it. Toward that end, I’m trying to attack three problems:
* providing a grid-scale energy source before we run out of oil, that energy also being needed so we can recycle resources and continue to have plastics that currently come from oil,
* building a new frontier where there is (also) space for displaced populations to resettle and grow, and for dissidents to live independent lives,
* creating planetary diversity to help ensure the survival of the human race in case something happens to make the Earth uninhabitable.
I’m trying to build a system, a private enterprise run for profit that will address those three issues. Neither NASA, the ESA, nor the Russian, Chinese, Indian or Japanese space programs are going to make them happen: Any politically controlled space program cannot have the managerial stability necessary to provide general civilian access to space, except perhaps by dictatorial decree – in which case general access would probably be denied by similar decree. In addition, space programs run as not-for-profit operations have no economic incentive to succeed. They are likely to merely be an expensive play toy as long as taxpayers can be convinced to support the effort – then either discontinued or curtailed as much as is needed to quell the public outcry. A massively complex and expensive industrial system is needed to make human life possible beyond Earth’s bounds. The only way it will be built is if investors can be reasonably assured they will have a profit at the end of the day – and I believe I can make that happen.
I need to write a book that explains my plan in sufficient detail that a realistic budget can be defined, and work can be started. I expect that effort is going to take 6 months or so. While I’m writing, there will be bills to pay, groceries to buy, things that need fixing, infrastructure to put in place, etc. On top of that, I have to get the book printed once I’m done writing it. I expect the effort is going to cost about $75,000, which is the goal of this GoFundMe campaign. To top it off, getting the cash flowing is an urgent problem, because I’m already a bit behind on covering expenses.
If you read through the material I’ve written on the Space Power Now Web site (hashtag #SpacePowerNow), you’ll see I’m offering contributors there a “matching funds” deposit in an L5 National Bank account once the Bank is set up, convertible to L5 bonds once everything else is in place. I’m making the same offer here: The US dollar amount you donate to this campaign (before GoFundMe takes their fees) will get you an equal L5 dollar amount deposited in an L5 National Bank account in your name. This is in addition to all of the other benefits described for various donation levels in this campaign.
I’m trying to protect the future of humanity. I want future generations to enjoy a life that’s at least as good as what we have today. I’m asking you to help me in that effort through donations to this campaign. Please help with a donation today, for as much as you can reasonably afford.
I will sincerely appreciate any contribution made to support this campaign. Your grandchildren will thank you as well.
We are going to run out of oil. Before that happens, we MUST have a replacement source of energy and feed stock for our civilization that has become so dependent on plastic. The time to act is NOW!! Please visit SpacePowerNow.org to help build a solution.
:#RaceToSpace, #SpacePowerNow
more...
Sep. 29, 2017, under disturbing, opinions
One of the SPAM messages I looked at today claimed to be from Fairfax Finance Limited, offering business loans and startup capital. I was suspicious if for no other reason than because the “fairfax.finance.limited@europe.com” email address looked bogus. (It turns out europe.com is a parked domain, so how would legitimate mail go through it?)
In my research to see if Fairfax Finance Limited is a real company (which it apparently is, but not related to the email), one of the links Google provided led to a page on ZoomInfo.com that appeared to have some information in an expanded view. I enabled Javascript for the page, and clicked the “more…” link to see what they had – and got a pop-up window that was trying to get me to install an executable program! Of course, I shut the window and did NOT install the program, but instead started doing some research on ZoomInfo.com itself, especially after reading the terms and conditions in the popup window that included “… in exchange for downloading and installing the ZoomInfo Contact Contributor utility which, among other features, involves sharing my business contacts as well as headers and signature blocks from emails that I receive.” (emphasis mine)
There’s a Wikipedia page about the company, saying it’s a subscription-based SaaS site that “sells access to its database of information about business people and companies to sales, marketing and recruiting professionals.” The Wikipedia page also says “Part of the company’s business model involves copying contents of web pages and storing them on its servers, and according to patent attorney Gene Quinn who runs the IPwatchdog intellectual property blog, this activity violates copyright law.”
So, from what I can see, this company builds its database by scraping public info off the Web, and by reading emails its users receive to collect contact information through software the user is expected to install and run on their system – for the sole benefit of ZoomInfo.com! Then, ZoomInfo turns around and sells that information back to those same users, and to anybody else they can get to buy it – and people pay for this??!??!?? Apparently so, since the company has been in business since 2000 and has 100-200 employees.
… and we wonder why we have so much SPAM …
We are going to run out of oil. Before that happens, we MUST have a replacement source of energy and feed stock for our civilization that has become so dependent on plastic. The time to act is NOW!! Please visit SpacePowerNow.org to help build a solution.
more...
Mar. 27, 2017, under events
I am having a reception as part of the 2017 Yuri’s Night celebrations on April 12 from 4 pm through 10 pm. The event is listed on the Yuri’s Night Web site at https://yurisnight.net/events/yuris-night-2017-boston-reception/. The flyer for the Reception can be found on the L5 Nation Web site at http://l5nation.com/news/2017YuriReception.htm. All of like mind are welcome to attend, but an RSVP will be sincerely appreciated.
more...
|
|