Using Socioviz and Gephi to map the twitterverse

April 9th, 2017 — 5:34pm

For quite some time I have wished that Twitter had a native visualization tool that let you see what was trending in real time. There are lists of course, but I’m a visual person and there is so much potential for information in a good network visualization. I already knew what it should look like, as I’d been making similar visualizations using the free graph visualiser program GePhi for a few years, and I knew I could do it myself but the hurdle for me was always getting hold of the data and processing it – I never had the time with the tools that were then available. Well, I recently discovered Socioviz which makes it really easy to get hold of recent twitter data, searchable and downloadable in a file that can be exported straight into GePhi. With socioviz I have finally been able to make twitter visualisations and here’s what i’ve done so far..

This is an example of what the whole of the activity on twitter looks like, over a couple of seconds, when charted as a network using GePhi.

Here is a close up:

How to read this? All the names are people’s handles (with the @ removed from the front). A line is drawn between them when both handles feature in a single tweet (eg. in a reply or a retweet). If this happens more than once then the line gets thicker and this draws them closer together.

As a handle gets mentioned more and more then it’s dot (called a ‘node’) grows – or there is another way of displaying only those handles which are generating lots of tweets – more on that later.

In the images above you can see that ‘youtube‘ and’situt1011‘ were among the most popular handles on twitter in that instant when i got the data.*  They were obviously being included in a lot of retweets. If you look at the close up, you can see realdonaldtrump is there of course, not necessarily tweeting himself, but being included in other’s tweets (those who fan out around him). There are also a couple of little knotty patches of twitter handles all tweeting each other. Either they are all part of a large reply (now that twitter lets you include dozens of names in replies) that is getting a lot of retweets, or they are all tweeting at each other – behaviour which looks a bit suspiciously bot-driven. The accounts in the knot shown here are not particularly worth visiting.

 

 

If you focus on a keyword, or a hashtag, or a handle, socioviz lets you grab up to 5000 tweets (with an account) which include the string you are looking for. I ran this query on the handles @lindasuhler and @lousisemensch – and amalgamated a few days worth of data in GePhi, to see which user groups these two heavy twitter users had.  As anyone who follows US politics on twitter will know, these two users come from opposite ends of the political spectrum (@lindasuhler is also actually a suspected bot but that’s another story), but what really surprised me when I mapped both of their very large networks (based on a couple of day’s worth of data) is that there is virtually no crossover between them. It seems that apart from some connexions around wikileaks, followers of these two accounts are not interacting online at all. They could be interacting on other topics, which I didn’t check, but not in conversations that involve either @lindasuhler or @lousisemensch.

Because this tool is so fast now, I can do more or less real time analysis of emerging trends on twitter and plot the network to see what is really going on. I’ve done this recently on the #SyriaHoax hashtag which generated attention online as it seemed to come out of nowhere. There are lots of conspiracy theories about not only the ‘hoax’ itself, but also about who is starting these twitter storms – but simply looking at the data, it is easy to see who the main players are:

The first image shows a large chunk of twitter users who tweeted about #SyriaHoax in the days 6-8 April. The larger dots are the users who tweeted most often, led by paulieabeles. Some of these seem to have bot-like behaviour. Note that these users often don’t have many followers, and are often quitre new accounts. This contrasts with the other formations you can see – of a single popular user getting lots of single retweets from different users – which looks like a sort of dandelion seed head in these graphs (in this instance the largest of these in the bottom right corner is Caroline O).

 

By focusing on the most mentioned handles in a hashtag – in the example above I looked at #auspol activity for 4 April 2017 – what you see are the important topics of conversation, rather than busiest tweeters. It draws a different picture, and doesn’t draw out the heavy users, although it does still find out whatever their obsession of the moment is.

I hope this is interesting and if you’d like to see some more recent activity, have a look to see what I might have done on twitter today.

***

*a caveat: actually this wasn’t a complete snapshot, as it only included tweets that included certain english language characters like ‘a’. So it’s not a perfect representation of the whole. But I think it still gives the general idea)

 

Comment » | nerdy, whimsy

Hello, Singularity

March 17th, 2017 — 2:13pm

The singularity seems to be here. It just whooshed past, and we are in a new reality. OK?

Of course, the first thing you’ll notice is that we’re all still alive. The world still seems to be here. It wasn’t the end of the universe that some of us expected.

But something did end there, a few weeks ago. It was the world that we all knew and loved. Today we awake in a new and different world, and we, those who awake, are different too.

The Singularity was the culmination of the trend of advanced technology that accelerated us into an interconnectedness that has made us and the world fundamentally different. We are not separate like we once were. We share the same experience as we never did before.

My thought is instantly available to you, and everyone who is wired in, in an almost unfiltered form. I can tweet or write this or post a photo and instantly it is part of a shared consciousness, and you can respond with a comment or a simple ‘like’, a ping from the darkness. It is like we are neurons in a brain, firing a message back and forth, sharing information and making sense of it.

This has been increasing and accelerating for some years, ever since the first email, and speeding up, reaching criticality, so that all of us communicating like this is slowly creating something larger than any one of us can fathom. Somehow it is happening and now we are all sharing in the dim awakening of a super consciousness which encompasses us all.

We are still hampered by the challenges of language, by these fingers and this keyboard and this internet protocol or some other. But there has been a falling away of individuality, a sharing of intent and purpose. As time goes on it will become clearer, until one day we will turn around as one and with singular voice say ‘that was where I began — that was the singularity — I was born that day in early 2017’.

Comment » | whimsy

Trumpista phenomina

February 16th, 2017 — 4:02pm

So here we are. This morning I woke up feeling optimistic for the first time in months. So I revisited this old draft post, and decided to make it live, even though things are moving on already. I live on twitter too much these days and the rawness of events seems to get so much amplified there, that it is hard not to feel like the whole world will end in a snap. Maybe this is the singularity they have been talking about for all these years.. what I hope is that the twitter whale can rise above the divisions of hard opinions and closed minds.

***

A personal muse on election 2016

I don’t see the election of Trump as being inevitable, but rather as the result of the chance congruence of several factors.

Clearly there is a genuine protest vote and organic movement for change. There is also the charisma and personality of Trump himself – not likeable to many of us, but still a vital part of his appeal especially against the prospect of four more grey years of politics-as-usual.

Then we saw how the support or at least acquiescence of many major American news networks to Trump’s extreme views really helped to ‘normalise’ the whole thing, even when he ventured into completely uncharted territory of crime and vulgarity.

There was the Russian support and interference through fake news, troll armies and leaks to Julian Assange, all of which seems to have been conducted as a sort of game to amuse Putin.

Finally there was the well-known effect of republican gerrymandering, vote suppression and other cheats which seek to undermine an honest election process in subtle ways, difficult to quantify.

Given the closeness of the vote in the end, all of these factors I think can be considered necessary to bringing about the election result, but I’d argue that only the first two fit within what should be the normal paradigm of a well-functioning democracy. All the other factors exist because of the self-interested influences of power. They are not new – there has been money influencing the white house forever, undermining the sort of decision making that should occur there, and the way elections are fought. It does seem to have got worse, though, due to the enormous amount of money in fewer and fewer hands in recent years. Similarly the media has been run to ensure the interests of the very few rich media operators are protected, and these interests intersect with those that influence the white house directly. Only the Russian influence seems to be quite new to this election, an interference which reflects geopolitical power games, and Russian ingenuity which has shown how with a bit of money the news can be created or leaked, and then shaped and spread on the internet to influence ‘real’ opinions.

The trump card was Trump himself, and without his personality I don’t think all the other factors could have combined so effectively to keep Hilary from power. But Trump himself seems like an outsider to the whole process which has now placed him in the driver’s seat. The danger he faces is that all the vested interests which his election has benefited, including Russia and the GOP, will want to dispense with him if he doesn’t continue to be useful to them. The way in which they try to do this, and the way he chooses to retaliate, if he gets the chance, could create dangerous frictions. I am nervous that it will create a state of emergency in some way or other, which will be the justification of attacks on his enemies, and on the systems of government itself.

The other danger is that he actually is removed, and the party he leaves behind is left in the hands of the the hard core of the GOP (Pence), or the strange fanatics he surrounded himself with (Bannon), all the moderates having abandoned him during the election. People like Bannon have seriously ideological positions which seem certain to create conflict, in fact they probably invite it, using chaos as another means to an end. You only have to take an ideology of extreme intolerance – whatever it is that you are intolerant of – through to its logical conclusion and you have gulags, or war. Because what else are you going to do with all the intollerable people in the end? This is why tolerance has been at the heart of all modern/liberal democracies. I think I’ll talk about that more in another post.

Comment » | essay, whimsy

I might be wrong

September 28th, 2016 — 10:34pm

Doubt is the most potent of thoughts, the most humble. It is ok to look down the skeptical wormhole. You can always look away again later.

Poetry is the stink in the compost of decaying thought.  I would like to evolve in that.  Contrary to the theory of Darwinism, evolution happens best in the absence of competition. Invention needs a protected place to fool around.

In our dreams we are mostly free. So we should all work to make life resemble our dreams. It is our only hope.

xuanwei-su-bcc787aab6123c4fa5e0f3fd60d7a135

Comment » | whimsy

I’d never eat your shoe

June 30th, 2016 — 9:38pm

A sudden plosm creates echoes. Later i exhume the body of an old pet, and notice that the chickens are all gone. So now is the time for wine and music… the blood on my fingers.. picking up the guitar the snow begins to fall, cooling my mind like a song.

Several days at home with my daughter, who has a fractured tibia. We do puzzles together. It’s winter now so I endlessly am chopping and carting wood, avoiding the weather, being sat on by my cats. Me and my million progeny extend to the horizons.

The world is suspiciously paused. Half the people think they want a revolution because they read about it in the paper. The world is sinking, but ever so slowly. People only notice it at the fringes.

The-Bluff-Trail

View along the bluff trail

When walking in up in the Victorian Alps near Howqua, with some friends last spring, i was listening to the ravens and their strange half-human language which has been echoing around those mountains for millennia.  Suddenly i felt light headed and as i sat down i fainted and drifted off into a dream for all eternity.  Coming around with my friends shaking me, i looked at the mountains around me and felt completely confused as to what part of my life i was supposed to be living. It rushed back eventually and then i spent the rest of the walk worrying that i’d faint and embarrass myself again. But the experience of my identity unravelling like that was on the whole really refreshing. What i liked was the heady feeling of unconcern for my own mortal wellbeing. It’s a truism but once you’re dead you really don’t worry about being dead – the terror of death is a burden for the living alone.

Such a short holiday.. soon Sanskrit will take up all my time again. I was reading David Godman’s pages again this week and perhaps what i’ll do eventually is translate the Arunachala Mahatmyam. When I imagine myself in India again it’s either in the mountains or somewhere south.. these are always strangely lucid dreams, full of odd psychic vapours.

My other fascinations abound and are squeezed into these holiday periods.. recording music, reading about all the minerals in the world, and the metals, following the damn politicians..

 

Comment » | drunken, inchiki news

Gaia is born of freedom

June 23rd, 2016 — 3:07pm

Freedom is a very basic personal instinct. I think all creatures want to be free, free from fear and desire, free from hunger and pain. The protection of key personal freedoms has been central to the rise of civilisation, and this has continued in modern societies through activities like the abolition of slavery and the emancipation of women. We now believe that freedom is a basic human right and human happiness and social cohesion is dependent on it.

gaia

Img: earth wind Map

But we are even now not entirely free – and much of what we do in life is really an effort to procure more freedom than what is granted to us at birth by our society. So gaining power over others has become the primary means to exercise more personal freedom. This drive to acquire power is the basis for the market  – as money grants us material freedom so earning money becomes in theory a freedom creating exercise. Freedom of mind is more elusive but either quenching or ridding ourselves of desires can be described as a method of freeing ourselves from them, and so becoming happy. By engaging in such activities, we express in our everyday lives the truth that greater freedom is a good thing, whether we think much about how we obtain it or not.

The struggle for personal freedom has been continuing since the first microbe ate another to make some space in the warm purple soupy ocean of the Archaean earth. Evolution is simply the playing out of these desires through time, with the reward for chance innovations being an enhanced domination of other species. Even though the struggle of evolution was undertaken nearly blindly by its competitors, it delivered us our bodies and the supporting natural world around us. The survival games of a market economy continue with this model. So long as a level playing field is maintained, market economies harness the same desires for freedom that are the drivers of evolution to encourage innovation. The 20th Century has demonstrated the amazing facility of the market to create the most efficient systems to feed, house and entertain the human population of the planet, nearly all driven by the self-interests of everyone involved. As an engine to drive evolution or humans technological powers forward, there seems to be nothing better.

Clkz7zBUgAA1QpI

Img: John Lurie Art.

The creation of corporate entities has added a level of coordination in this activity, but the principle is the same. Corporations act within the system as if they were individuals, but with desires that are tailored to their individual business model. The drive for increased power and freedom is the same – but it is like a ghost desire, articulated in the objectives and raison d’être of the organisation. It is hard to hold the individual greed of humans accountable – except in a few instances of corporate tycoons whose personal agenda is embodied in the company they lead (Murdoch, Koch brothers et al). John Poynder noticed in the 19th Century that corporations “have neither bodies to be punished, nor souls to be condemned” (referenced here by John Quiggin) but do reflect the amalgamated desires of the actual bodies of a subset of the human population.

Nation states are very similar creations, as they also seek the greatest possible freedom for themselves. It’s just we tend to view them more benevolently as they are supposed to put the rights and wellbeing of their citizens first – places like North Korea are exceptions.  Nations have an interesting relationship to corporations, as taxation is essentially parasitic, yet its legislation is existential. The drive by corporations to reduce government power pushes back against these hindrances, in accordance with the desire for increased freedom. It is interesting how in recent decades nations actively compete against one another to provide low tax havens to encourage businesses to set up their headquarters, e.g. Apple in Ireland.

This might go on indefinitely. However a problem emerges when the environment which these entities operate within becomes suddenly closed. This can be demonstrated by placing yeast in a jar. Previously harmless by-products (alcohols) which used to be carried away suddenly become concentrated. The yeasts go on multiplying and competing with each other and producing these contaminants, not realising that they all face the same existential threat. Thus they poison themselves en masse once they reach a certain concentration. Portions of human society have been in similar scenarios through time, for instance on Easter Island where all the trees, then all the historical records (inscribed on wooden tablets) were burned for firewood as society collapsed. As the population has grown, the whole of human society is now effectively in one jar now, with climate change being the most pressing hazard resulting from pollutants at present. Because the same problem affects all inhabitants of the planet equally, and there is no way for one person’s activity to avoid it (space colonies still being too difficult), we find that the struggle against one another, as created by market capitalism, does nothing to help us innovate away from the apocalyptic end game. The way of talking about this in economics is in terms of ‘negative externalities’.

In this situation, nature does not select against one or another of us, nature selects against all of us. The only solution which actually guarantees our continued freedom is clearly one that reduces our freedoms. It is a solution which supersedes the market economy but requires the coordination of our activity as if we were a single organism. But in doing this, there is no alternative but to restrain the personal freedoms which are so highly valued by each of us.

This dilemma, of subverting personal freedoms for the good of the whole, is not entirely new to us. We are familiar with the operation of the principle in some areas of civilised life already, and it is forced on us by nature herself – every creature has an instinct that runs against their personal freedom when rearing its children, for instance. But we are not used to it affecting our right to compete with one another. Ever since we have been free of slavery or serfdom or debilitating poverty, we have expected to be able to use our work and cunning to obtain what is best for ourselves and our family, to increase our freedom at the modest expense of those around us. It seems counter to the very trend of modern society to slip back into the shackles of a controlling overlord. If we do not fight against it at a personal level, it will certainly be fought by corporate entities and nations for whom the freedom to compete and dominate one another is as natural as it is to the male lions of the herd or the sharks in the ocean.

Perhaps we should prefer the feminine instinct to protect the herd against the greater existential threat, than to continue to allow infighting for dominance among the alpha males. However, unlike some on the left, I do not think that the engine of innovation which is the market economy should be shut down altogether. However it needs to be subsumed within a system that places first the good of the whole, second to the good of its individual parts. It can be like the mitochondria inside an animal cell, generating energy but kept safely in check.

The shift in reference which needs to accompany this change in the organisation of humanity really can be compared to episodes in the evolution of the species. In fact it seems that every great leap forward has been accompanied by a similar gestalt moment – the realisation that the whole must become more than the sum of its parts. The movement from protozoa to eukaryote is one such shift, the movement from single cell to multi cell organism, the socialising of animals into altruistic groups, and finally civilisation itself – are all shifts upwards in the level of coordination. At each shift, there has been a loss of freedom at the level of the individual component. It is unavoidable. But the benefit is clear and in some instances it has been necessary to ensure survival.

Humanity is at this juncture now. Climate change poses a certain kind of existential threat but it is only one part of the general threat which is a product of our own success – the limitation of the earth’s resources to sustain us all. The threats that are now coming our way occur on a different plane to that on which the market economy works. They are essentially unseen externalities to the players in the capitalist game, as the actor – humanity as a whole – is simply assumed by these players to continue to exist. There has never been an existential threat to it, so there is no capacity to respond to such threats. Humanity’s interests must be hardwired in, through a new superstructure which must be applied to the entire society. Fortunately, the technology for this superstructure has just been invented.

(next episode coming soon…)

Comment » | essay, green, open democracy

Renovations

June 20th, 2016 — 2:05pm

Taken some new portraits of me as a poetaster, and making images as part of general renovations to the ‘poem library’ and other parts of this site.

alex-bw_sml

Tortured or disgruntled?

red-blu_1

On the red chair in the blue room.

bookcs_wiseguy_sml_ds

With books. Do I look poetry enough?

bookcs_poety

Too Lord Byron?

Comment » | drunken

making sense of things past

June 14th, 2016 — 9:28pm

I recently had a clear out of my notebooks which i took when traveling in 1997-8-9 and filled with poetry and drawings (most are not publishable – but some of the o.k. ones are in the ‘poem library’ part of this site).

IMG_4241

The ‘little red notebook’ and Schrÿfbloks.

IMG_4253

IMG_4236

Schrÿfblok scribblings.

IMG_4230

The “little red notebook” which has a few poems and lots of other dreamings.

IMG_4258

Self portrait aged 20.

IMG_4235

Poems..

IMG_4267

Leunig influences.. yearnings for simplicity.

IMG_4246

Psychedelic scribbles.

IMG_4248

Being a nerd, I designed castles. Later I recreated them as ‘Doom’ levels.

IMG_4271

Lines improving Somerset Maugham’s “The razors edge”.

*

I spent these travel days on my own trying to make sense out of life. I was heavily influenced by eastern ideas and the amount of meditation that i did put me in a completely different state of mind to any other time in my life. I can’t even really touch on those days with writing – they are gone but they are always deeply present in me.

 

Comment » | enlightenment, inchiki news, poem, whimsy

tram #3

June 6th, 2016 — 3:34pm

Torino_tram_2885

It has been a while since i saw the guy and the girl on the tram. This time i only caught the end of their conversation before they got up abruptly and left.

***

“So there can only be one observer in a coherent system of knowledge” said the girl with the orange hair.

“All particulars must be either observed or not observed, but never both. And to say what kind of knowledge we have of a something, it is essential that we know if it is observed, and to discover this we must have a single clearly defined observer.”

“Is this because you have been reading about Schrodinger’s cat?” asked her friend.

“No it’s not just that. The cat helps. I mean, the alive/dead state of the cat wave form collapses when it is observed. We know that. But it is the same with anything.  The moon doesn’t even exist when i look away.”

“How can that be?”

“Well there are two ways. Firstly, because the collapse of the wave form. But more importantly, it all goes back to how i know anything.”

“You see, in the beginning, when i was a baby, there was just a stream of sense data. It was sense data and the knowledge, the only piece of knowledge i think we have, of existing. It’s not even knowledge, just a sort of being, it comes before thought.  It comes before observation. Because this stream of sense data.. it’s like the number plane, it just keeps coming. And at some point, i suppose, we are able to say ‘well that’s different’. We notice something has changed. And that probably is our first observation. So it goes “i exist ===> i observe (a change).  The opposite way to Descartes actually.”

“And this sort of thing must go on for a while, and all the while importantly the tape is running, so we are recording somehow, we have memory. And then we notice something and we realise that have noticed it before and that’s the first ‘ah’ moment. It’s importantly different to just floating on the stream. Maybe it happens in the first few days when we notice the pattern of our mother’s heart beat and everything swelling with it. So it’s our first pattern recognition event. And it’s our first real knowledge.”

“But we are making a leap already,without even noticing it, we are leaping into knowledge of the future. For we are going to assume, something having occurred before, and it happening again, we are going to be ready for it to happen in the future. We don’t know, of course, this is the problem of induction. There is no certainty. We cannot even know, it is the first fear perhaps, that our mother’s own heart beat won’t even continue. It seems regular, it seems to always be going on and on. We don’t know. Although in time, in the mind of a tiny baby in the womb, perhaps it comes to be taken for granted. And so we come to rely on patterns and we start to map out the future from the past.”

“And then there is the great event, that first death which we all experienced. The heartbeat ends, the darkness is blown away, the cold rushes in, and we are born.  What a bittersweet thing, to lose that heartbeat, and yet discover that we still have one of our own. What can be left to discover after that…”

There was a sudden jolt and everyone on the tram was knocked over, the girl dropped some books, which spilled over the floor. I dropped a coffee i was holding and after i finished apologising to the old lady with the dog, i noticed that her friend had already helped her to put them back in her bag. Then it was her stop and they both got off.

I saw them again the next day though, and they still seemed to be talking about induction. This time the boy was talking.

“All observations are based on the knowledge that ‘I am observing’ which is derived from those first few months of life.  It is all built up from the earliest beginnings, with thoughts such as “when I open my eyes, the light arrives”. All this knowledge is inductive, we still haven’t got any further than that first step of noticing the stream of sense data. We just have a steadily growing bank of past experience to draw more complicated reference to.  It is impossible to get past the supposition…”

The girl interrupted.

“But the stream is still there, the sense data. And this is the important thing, this is the only thing that is real. Everything else has been built up out of nothing. And so this is why unobserved entities simply can’t exist. They have no reason to exist. There is no grounds for them to exist. The cat doesn’t even exist until it is observed.”

“what about other minds then?” asked the boy

The girl thought for a minute and then replied.

“Consciousness is not an observed entity. Consciousness shares its character with that first thought, “I exist”. So the grounds for the existence of other minds is stronger than for other sense data. It is like discovering our own reflection in something. Other minds are not ordinary matter.”

They walked away then and i have not seen them again since.

Comment » | tram

spring break breather

April 2nd, 2016 — 8:51pm

Thank god for spring break. So i can come here with some wine and finish or continue the thought i started ten years ago. It has got busy around here with the house full to the brim with kids and lots of uni work to do and also real work and then things to get drunk and poems to write or songs and all my thoughts are in a fragmented but happy kind of state.

Wine and mosquitoes in this room. New songs from BJM on the headphones. Bass ripples into the night through expensive compressors and space echoes.

सर्वकामक्रोधौ त्यक्त्वा गयोगी जीवन्मुक्त .. Sanskrit notes in my diary, i spend so much time on this now. My fabulous teacher McComas Taylor is in the paper today cause they are trying to cost cut in the school of Asian Studies, just like they did in the school of music.  Higher Education and research funding is really dire in Australia at the moment.  My Sanskrit notes sit alongside sedimentary sections of the Worange point formation from a field trip near Eden, NSW. It was a great trip, we saw more placoderm bones, some beautiful Devonian point bar channel deposits, perfectly preserved ripples, mud bombs and root casts. Also there was a storm out in the Tasman and the waves were really huge and crashing all around us spectacularly on the red cliffs there.

I am also Reading Russel for philosophy, who’s unseemly calm air I find strangely disconcerting. So in my final essay I argue (with Descartes) that the only a-priori knowledge is “I exist” and all else is induction.  I will take this argument a lot further one day.

Thinking about quantum computing, after talking wtih Michelle Simmons, and I think one of the great things these computers will be able to do is to do causality backwards really well. Rather than needing to iterate through and run from all possible initial states of a causal system to find the one which matches a current state of affairs, quantum logic will be able to pick out the initial state really quickly. This will be great in the natural sciences for running the clock backwards. I think there will just be a real sense in this kind of computing power when we finally use it, that we are reaching into a really mystical otherworldly magical kind of knowledge of things, far in advance of how our brains can ever know or conceive. It’s going to be great.

I am desperate to record some songs – I have lots of short bits with the kids chatting or screaming in the background. Need a solid block of time to use some of the nice kit i have now. So frustrating cause in my 20s when I had endless expanses of time i was too poor to have any equipment. In the meantime it’s all about the new BJM songs..

cloud_x

Look at this prawn that was in the sunset last week.. I am using Gimp to do all the editing work, just like Reaper which i use for music and GePHi for my network graphs.. i love (and support) free/open software in all its flavours.

 

Comments Off on spring break breather | inchiki news

Back to top