Hueristic
Legendary
Offline
Activity: 4018
Merit: 5587
Doomed to see the future and unable to prevent it
|
|
January 18, 2016, 06:01:07 PM |
|
Bittrex's blockchain has synched.
So are deposits and withdrawals working on all exchanges again? Is Bittrex and Poloniex running 0.9.1? Bittrex just sent with mixing lev 0, so i would say they have not updated. But if I were an exchange I would not update until I was sure there were no bugs in the latest release. Usually a week is a good timeframe to gauge whether there is a glaring error. You will notice that corporations tend to stay with versions they know are stable and do not beta test ever. This is sound practice when money is involved. For all you youngins, there used to be an industry for nothing but beta testing where people actually were paid to make sure a product was ready for the end user. The level of professionalism in this industry is creeping to the lowest common denominator (I.E. M$). And I blame the fools that put up with it for it. /rant off
|
“Bad men need nothing more to compass their ends, than that good men should look on and do nothing.”
|
|
|
dEBRUYNE
Legendary
Offline
Activity: 2268
Merit: 1141
|
|
January 18, 2016, 06:09:24 PM |
|
Bittrex's blockchain has synched.
So are deposits and withdrawals working on all exchanges again? Is Bittrex and Poloniex running 0.9.1? Bittrex just sent with mixing lev 0, so i would say they have not updated. But if I were an exchange I would not update until I was sure there were no bugs in the latest release. Usually a week is a good timeframe to gauge whether there is a glaring error. You will notice that corporations tend to stay with versions they know are stable and do not beta test ever. This is sound practice when money is involved. For all you youngins, there used to be an industry for nothing but beta testing where people actually were paid to make sure a product was ready for the end user. The level of professionalism in this industry is creeping to the lowest common denominator (I.E. M$). And I blame the fools that put up with it for it. /rant off That doesn't necessarily has to be the case. Bear in mind that the default of simplewallet is mixin = 4, but you can still make mixin = 0 transactions via the RPC API, which exchanges probably use. However, for all we know they are still in 0.8.8.6. Anyway, after 20 March mixin = 3 will be enforced.
|
|
|
|
Hueristic
Legendary
Offline
Activity: 4018
Merit: 5587
Doomed to see the future and unable to prevent it
|
|
January 18, 2016, 06:13:16 PM |
|
Bittrex's blockchain has synched.
So are deposits and withdrawals working on all exchanges again? Is Bittrex and Poloniex running 0.9.1? Bittrex just sent with mixing lev 0, so i would say they have not updated. But if I were an exchange I would not update until I was sure there were no bugs in the latest release. Usually a week is a good timeframe to gauge whether there is a glaring error. You will notice that corporations tend to stay with versions they know are stable and do not beta test ever. This is sound practice when money is involved. For all you youngins, there used to be an industry for nothing but beta testing where people actually were paid to make sure a product was ready for the end user. The level of professionalism in this industry is creeping to the lowest common denominator (I.E. M$). And I blame the fools that put up with it for it. /rant off That doesn't necessarily has to be the case. Bear in mind that the default of simplewallet is mixin = 4, but you can still make mixin = 0 transactions via the RPC API, which exchanges probably use. However, for all we know they are still in 0.8.8.6. Anyway, after 20 March mixin = 3 will be enforced. True, anything is possible. Transaction was very quick, it was faster than the 5 minute wait for the confirmation email. Lol
|
“Bad men need nothing more to compass their ends, than that good men should look on and do nothing.”
|
|
|
volyova
Legendary
Offline
Activity: 910
Merit: 1000
|
|
January 18, 2016, 06:18:50 PM |
|
LOL you think xmr can hit the same price as Dash or what?
Well, eventually it will- when dash starts it's long way down.... With what? One update "bug fixing" per year from Lousy Monero developers or is it with spamming Dash ANN thread with hate messages from Monero supporters including you're developer Smooth? Edit : Monero needs a new development team and a new marketing vision. Oh my days!
|
|
|
|
farfiman
Legendary
Offline
Activity: 1449
Merit: 1001
|
|
January 18, 2016, 06:25:49 PM |
|
LOL you think xmr can hit the same price as Dash or what?
Well, eventually it will- when dash starts it's long way down.... With what? One update "bug fixing" per year from Lousy Monero developers or is it with spamming Dash ANN thread with hate messages from Monero supporters including you're developer Smooth? Edit : Monero needs a new development team and a new marketing vision. You didn't understand what I wrote. It's about dash going down no matter what happens to monero.
|
"We are just fools. We insanely believe that we can replace one politician with another and something will really change. The ONLY possible way to achieve change is to change the very system of how government functions. Until we are prepared to do that, suck it up for your future belongs to the madness and corruption of politicians." Martin Armstrong
|
|
|
primer-
Legendary
Offline
Activity: 1092
Merit: 1000
|
|
January 18, 2016, 06:30:30 PM |
|
LOL you think xmr can hit the same price as Dash or what?
Well, eventually it will- when dash starts it's long way down.... With what? One update "bug fixing" per year from Lousy Monero developers or is it with spamming Dash ANN thread with hate messages from Monero supporters including you're developer Smooth? Edit : Monero needs a new development team and a new marketing vision. I agree, developers are total retards (fluffypony, moneromoo, smooth).
|
|
|
|
TPTB_need_war
|
|
January 18, 2016, 07:08:59 PM |
|
Marketing an unfinished product for a unknown brand is suicide on a worldwide stage.
Somebody forgot to tell that to Satoshi. (you are incorrect)
|
|
|
|
farfiman
Legendary
Offline
Activity: 1449
Merit: 1001
|
|
January 18, 2016, 07:22:38 PM |
|
Marketing an unfinished product for a unknown brand is suicide on a worldwide stage.
Somebody forgot to tell that to Satoshi. (you are incorrect) Satoshi never really tried to "market" bitcoin and at the time of his departure bitcoin was almost an unknown worldwide.
|
"We are just fools. We insanely believe that we can replace one politician with another and something will really change. The ONLY possible way to achieve change is to change the very system of how government functions. Until we are prepared to do that, suck it up for your future belongs to the madness and corruption of politicians." Martin Armstrong
|
|
|
TPTB_need_war
|
|
January 18, 2016, 07:56:15 PM Last edit: January 18, 2016, 08:23:30 PM by TPTB_need_war |
|
ArticMine PMed me after I wrote that flaming post, and said he would reply after studying my posts. He has not yet replied. Does that mean I am correct and there is no solution for Monero. I think so. It is fundamental. Afaics, you'd have to completely rewrite Moaneuro. Rewrite Monero, is not necessary at all but some documentation on how the Cryptonote adaptive blocksize limits actually work is needed, especially given the formula in section 6.2.3 of the Cryptonote Whitepaper is wrong. https://cryptonote.org/whitepaper.pdf. My response will come in time. I will start by examining the Cryptonote Penalty Function for oversize blocks. This is critical to understand any form of spam attack against a Cryptonote coin. From the Cryptonote whitepaper I cited above the penalty function is: Penalty = BaseReward ( BlkSize / M N - 1) 2The new reward is: NewReward = BaseReward - PenaltyWhere M N is the median of the blocksize over the last N blocks BlkSize is the size of the current block BaseReward is the reward as per the emission curve or where applicable the tail emission NewReward is the actual reward paid to the miner The Maximum allowed blocksize, BlkSize, is 2M NThe penalty is only applied when BlkSize > (1 + B min) M N Where 0 < B min < 1 In the Cryptonote whitepaper B min = 0.1. The error in the Cryptonote Whitepaper was to set NewReward = PenaltyFor simplicity I will define: BlkSize = (1+B) M NBaseReward = R basePenalty (for a given B) = P BNewReward (for a given B) = R BThe penalty for a given B becomes: P B = R baseB 2While the new reward for a given B becomes: R B = R base(1 - B 2) The first derivative of P B with respect to B is dP B / dB = 2R baseB In order to attack the coin by bloating the blocksize the attacker needs to cause at least over 50% of the miners to mine oversize blocks and for an expedient attack close to 100% or the miners to mine oversize blocks. This attack must be a maintained over a sustained period of time and more importantly must be maintained in order to keep the oversized blocks, since once the attack stops the blocks will fall back to their normal size. There are essentially two options here: 1) A 51% attack. I am not going to pursue this for obvious reasons. 2) Induce the existing miners to mine oversize blocks. This is actually the more interesting case; however after cost analysis it becomes effectively a rental version of 1 above. Since the rate of change (first derivative) of P B is proportional to B the most effective option for the attacker is to run the attack with B = 1. The cost of the attack has as a lower bound R base but would be higher, and proportional to, R base because miners will demand a substantial premium over the base reward to mine the spam blocks due to the increased risk of orphan blocks as the blocksize increases and competition from legitimate users whose cost per KB for transaction fees needed to compete with the attacker will fall as the blocksize increases. The impact on the coin is to stop new coins from being created while the attack is going on. These coins are replaced by the attacker having to buy coins on the open market in order to continue the attack. The impact of this is to further increase the costs to the attacker. It at this point where we see the critical importance of a tail emission since if R base = 0 this attack has zero cost and the tragedy of the commons actually occurs. This is the critical difference between those Cryptonote coins that have a tail emission, and have solved the problem, such as Monero and those that do not, and will in a matter of time become vulnerable, such as Bytecoin.Afaics, the above does nothing to remove/ameliorate the Tragedy of the Commons in Satoshi's mining algorithm[1], except if viewed as short-term solution while no miners have a significant percentage of the network hash rate. The problem is that as I explained for Ethereum, as transaction rate scales up and thus the block reward is dominated by fees, then unless there is a uniform distribution of hashrate amongst all full node miners (which is of course impossible since not everyone can locate their mining equipment next to a hydropower plant with 2 - 4 cents electricity or for that matter perhaps free subsidized electricity in corrupt environs such as China), then those miners with more hashrate will have lower costs of verification. Thus they will be more profitable and can buy more hashrate faster than the other miners. Thus mining will entirely centralize over time, because the economics are designed to centralize mining. So since mining will centralize, then attaining 51% of the mining power will be guaranteed and thus the above algorithm can do nothing to stop miners from spamming the block chain size by paying transaction fees to themselves. But of course with 51% of the hashrate, they can do anything they want, except up to the limits of what public perception will tolerate. I am assuming of course that transaction fees in a free market will reflect actual (marginal) costs and that verification cost will be significant relative to other costs such as bandwidth. There is also afaics a math flaw in ArticMine's analysis. Unless N is very small, then a miner with a significant but less than 51% hashrate is going to win a block in most every N set, and thus they can hit the 2 * MN hard limit every time (or what ever rate of increase they deem most cost effective according to the Penalty cost being a function of a square), gradually ramping the median block size up over time. Thus the spam attack is not avoided, rather it just takes longer. And again I had pointed out that by shorting the coin, they can potentially recover their lost block rewards and profit. And if N is very small, then the likelihood that a miner can win all N blocks with less than 51% hashrate increases. Also it is not clear to me from ArticMine's specification if N is overlapping meaning a FIFO queue? But I doubt that makes any difference to my conceptual math point (note I have not written down the equations to precisely quantify this alleged flaw). Also the 2 * MN hard limit means that block chain can't handle transient spikes in transaction load, e.g. such as would be required by Lightning Networks (which has sort of a garbage collection overhead which manifests has large spikes in transaction load). Conceptually at the highest-level semantic model of the generalized essence, an anti-aliasing filter on transaction rate can't ameliorate the fact that a spam transaction is indistinguishable from a non-spam transaction. To solve this problem we need to make the cost of what is burned when submitting a transaction greater than the cost of cumulative network verification costs. That both solves the economics of the first paragraph above and it also removes the need to limit the block size in any artificial way other than the burn cost. But in my design, I don't waste the burn cost and instead apply it to security in the form of unprofitable mining. Note that the only way to limit culmulative network verification costs is to centralize mining. And this is why I wanted to give up, because I didn't see any solution that didn't centralize mining. But then I realized the design I had for intra-block partitions can centralize while remaining controlled by decentralized PoW, thus effectively still decentralized. And this is why I say you will have to completely rewrite Monero (at least the consensus design portion of the block chain code).
|
|
|
|
smooth (OP)
Legendary
Offline
Activity: 2968
Merit: 1198
|
|
January 18, 2016, 08:20:21 PM |
|
Six off-topic posts were deleted, a new record by a wide margin.
Please try to keep the thread on topic. This includes not making repetitive posts covering points that have already been made recently. Those are on warning that they will be deleted. If you post A, someone else disagrees with A, do not post about A again. Both sides have been presented and the reader will have to decide. By the amount of posts you have that isn't a good sign for your cointoendallcoinsCOIN.
yeah, I'm off topic.
I already agree. And yes we are cluttering the thread now. Any more posts (that are addressing my posts) should ideally be on the facts or arguments about utility of Monero's anonymity and/or the Tragedy of the Commons around economics of mining and block size.
Or just move on to other discussion and I will stop responding.
Can you stop spamming this thread? No one wants to read your nonsense, please stick to your own threads and if anyone is interested in discussing your musings they will surely join you there.
Hey, guess what? You're the fucking troll, dumbass.
Have you ever heard of the concept of self-deprecating humor?
It is known to be a way to be an outlet for stress and for (mice and) men to realize they aren't as self-important as they think they need to be.
Will you ever mature and learn to be a sociable human being?
(smooth is in a difficult political position because of assholes like you but I warned him not to involve in coins that are marketed directly to speculators)
614 pages in this thread and which major facts were elucidated? The thread is mostly noise any way.
Irrelevant to my point. This is an example of a noise rebuttal.
|
|
|
|
luigi1111
Legendary
Offline
Activity: 1105
Merit: 1000
|
|
January 18, 2016, 08:25:13 PM |
|
There is also afaics a math flaw in ArticMine's analysis. Unless N is very small, then a miner with a significant but less than 51% hashrate is going to win a block in most every N set, and thus they can hit the 2 * MN hard limit every time, gradually ramping the median block size up over time. Thus the spam attack is not avoided, rather it just takes longer. And again I had pointed out that by shorting the coin, they can potentially recover their lost block rewards and profit. And if N is very small, then the likelihood that a miner can win all N blocks with less than 51% hashrate increases. Also it is not clear to me from ArticMine's specification if N is overlapping meaning a FIFO queue? But I doubt that makes any difference to my math point.
Bumping up against the hard limit is probably wastefully expensive for this "attack"; you only need to produce blocks bigger than the (expected, since you don't know in advance) median to cause the new median to shift higher. However, your attack doesn't work AFAICS. If a (less than 50%) miner spams his own blocks full of transactions (greater than current median, exact values not important as he's not including any other transactions), he can only expand the median relative to his % of the hash rate. For example, if a 33% miner produces blocks all 2x the median, he effectively reduces "real" block space by 33%, so the median should expand 50% to accommodate. His effect after that expansion is likely not going to be significant. This should remain true all the way up to 50% and 2x. After that, a block from the attacker actually captures the median value, and he can do whatever he wants. N=100 right now BTW. There are some other possible weaknesses or mal-incentives in the current approach; I think it still has room for improvement.
|
|
|
|
smoothie
Legendary
Offline
Activity: 2492
Merit: 1491
LEALANA Bitcoin Grim Reaper
|
|
January 18, 2016, 08:29:20 PM |
|
There is also afaics a math flaw in ArticMine's analysis. Unless N is very small, then a miner with a significant but less than 51% hashrate is going to win a block in most every N set, and thus they can hit the 2 * MN hard limit every time, gradually ramping the median block size up over time. Thus the spam attack is not avoided, rather it just takes longer. And again I had pointed out that by shorting the coin, they can potentially recover their lost block rewards and profit. And if N is very small, then the likelihood that a miner can win all N blocks with less than 51% hashrate increases. Also it is not clear to me from ArticMine's specification if N is overlapping meaning a FIFO queue? But I doubt that makes any difference to my math point.
Bumping up against the hard limit is probably wastefully expensive for this "attack"; you only need to produce blocks bigger than the (expected, since you don't know in advance) median to cause the new median to shift higher. However, your attack doesn't work AFAICS. If a (less than 50%) miner spams his own blocks full of transactions (greater than current median, exact values not important as he's not including any other transactions), he can only expand the median relative to his % of the hash rate. For example, if a 33% miner produces blocks all 2x the median, he effectively reduces "real" block space by 33%, so the median should expand 50% to accommodate. His effect after that expansion is likely not going to be significant. This should remain true all the way up to 50% and 2x. After that, a block from the attacker actually captures the median value, and he can do whatever he wants. N=100 right now BTW. There are some other possible weaknesses or mal-incentives in the current approach; I think it still has room for improvement. Is there some chart I missed that lays this out in a visual way that includes all parameters of adjustment (including the penalty) as the block size gets "pushed" higher by an attacker (or just overall usage)?
|
███████████████████████████████████████
,╓p@@███████@╗╖, ,p████████████████████N, d█████████████████████████b d██████████████████████████████æ ,████²█████████████████████████████, ,█████ ╙████████████████████╨ █████y ██████ `████████████████` ██████ ║██████ Ñ███████████` ███████ ███████ ╩██████Ñ ███████ ███████ ▐▄ ²██╩ a▌ ███████ ╢██████ ▐▓█▄ ▄█▓▌ ███████ ██████ ▐▓▓▓▓▌, ▄█▓▓▓▌ ██████─ ▐▓▓▓▓▓▓█,,▄▓▓▓▓▓▓▌ ▐▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▌ ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓─ ²▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓╩ ▀▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▀ ²▀▀▓▓▓▓▓▓▓▓▓▓▓▓▀▀` ²²² ███████████████████████████████████████
| . ★☆ WWW.LEALANA.COM My PGP fingerprint is A764D833. History of Monero development Visualization ★☆ . LEALANA BITCOIN GRIM REAPER SILVER COINS. |
|
|
|
smooth (OP)
Legendary
Offline
Activity: 2968
Merit: 1198
|
|
January 18, 2016, 08:32:11 PM |
|
Bumping up against the hard limit is probably wastefully expensive for this "attack"; you only need to produce blocks bigger than the (expected, since you don't know in advance) median to cause the new median to shift higher.
I'm not sure about this, since it depends on your objective. We can model this simply by viewing the calculation by epochs rather than a sliding window. If you create a set of blocks with size limit+10% in each epoch, the limit will only grow by 10% per epoch. If you double the size, the limit will double per epoch. So this allows much faster growth (albeit at higher cost in penalty). But other objective functions are possible certainly. It would be a relatively simple matter to express them mathematically and maximize.
|
|
|
|
TPTB_need_war
|
|
January 18, 2016, 08:40:16 PM |
|
Bumping up against the hard limit is probably wastefully expensive for this "attack"
What expense?
|
|
|
|
smooth (OP)
Legendary
Offline
Activity: 2968
Merit: 1198
|
|
January 18, 2016, 08:41:41 PM |
|
More off topic low-content deleted. TPTB, information about what you are aware of is certainly off topic. If people are interested in your state of awareness they can read a thread more relevant to that subject.Unfortunately you deleted a post where I added the information that I was already aware of his thought process and making it known that it is an irrelevant thought process. The point is that Bitcoin is still in beta and yet went from 10,000 BTC per pizza to $1000 per BTC due to marketing (who cares that Satoshi wasn't the one who did the marketing). And besides no one can know what Satoshi contemplated on the marketing or to what degree he has been involved behind the scenes.
|
|
|
|
smooth (OP)
Legendary
Offline
Activity: 2968
Merit: 1198
|
|
January 18, 2016, 08:42:10 PM |
|
Bumping up against the hard limit is probably wastefully expensive for this "attack"
What expense? There is always opportunity cost to exceeding the median.
|
|
|
|
smooth (OP)
Legendary
Offline
Activity: 2968
Merit: 1198
|
|
January 18, 2016, 08:54:19 PM |
|
How can we have a discussion of marketing in this thread otherwise? You can add new information that is on-topic. What you are aware of is not on topic. That includes responding to farfiman or anybody else. If Satoshi's marketing tactics are relevant, and they may be, then post about them.
The rest of your post will be deleted. So how can refute his nonsense if you are going to delete my response, and do note the Edit I had made just before you deleted my post.
Go ahead and delete this. I am putting it in my thread. To be fair, you delete farfiman's post as well, if you are not going to allow me to rebut it. This entire thread is turning into an immature nonsense time-waster for me.
|
|
|
|
luigi1111
Legendary
Offline
Activity: 1105
Merit: 1000
|
|
January 18, 2016, 09:35:35 PM |
|
Bumping up against the hard limit is probably wastefully expensive for this "attack"; you only need to produce blocks bigger than the (expected, since you don't know in advance) median to cause the new median to shift higher.
I'm not sure about this, since it depends on your objective. We can model this simply by viewing the calculation by epochs rather than a sliding window. If you create a set of blocks with size limit+10% in each epoch, the limit will only grow by 10% per epoch. If you double the size, the limit will double per epoch. So this allows much faster growth (albeit at higher cost in penalty). But other objective functions are possible certainly. It would be a relatively simple matter to express them mathematically and maximize. Hmm, the quadratic increase in penalties suggests to me that it'd be cheaper to do it over time, but maybe not. Either way, I don't see how you can raise it above the amount "allowed" by your hash rate. Bumping up against the hard limit is probably wastefully expensive for this "attack"
What expense? You're suggesting mining is (or can be) free? That's absurd. Even if it were free, this attack still costs you the reward.
|
|
|
|
TPTB_need_war
|
|
January 18, 2016, 09:51:08 PM Last edit: January 18, 2016, 10:13:22 PM by TPTB_need_war |
|
Bumping up against the hard limit is probably wastefully expensive for this "attack"
What expense? You're suggesting mining is (or can be) free? That's absurd. Even if it were free, this attack still costs you the reward. I am suggesting the State (or those corrupt who control it) can charge the cost of mining to the collective (think the Three Gorges Dam that wrecked environmental devastation downstream, upstream and derivative effects all over China). I have made this point numerous times. And apparently (after everyone said I was crazy), it came true in China and if true was a factor that enabled China to capture an estimated 67% of the mining and 51% attack Bitcoin. Documentation of these statements is in my vaporcoin thread. If the profit from shorting is greater than the reward, then it doesn't cost you anything. The free mining cost just makes it more likely you can sustain it long enough to reap your reward. How do we know the Chinese won't milk the investors while the block reward is high (mining at near $0 cost charging it the cost to the collective) and then also profit by shorting it all the way down from $1000. We are bunch of naive geeks who are being reamed (mined) by savvy traders and strategists. These are no different conceptually than Rothschild's and Rockefeller's methods of yore. The players and technological field change, the game remains the same. (Yeah I am crazy conspiracy theorist whose analysis is always wrong) Edit: haven't you been slightly suspicious of why the MSM publicized Bitcoin so much. That doesn't happen without the approval the global elite.
|
|
|
|
luigi1111
Legendary
Offline
Activity: 1105
Merit: 1000
|
|
January 18, 2016, 10:36:06 PM |
|
Bumping up against the hard limit is probably wastefully expensive for this "attack"
What expense? You're suggesting mining is (or can be) free? That's absurd. Even if it were free, this attack still costs you the reward. I am suggesting the State (or those corrupt who control it) can charge the cost of mining to the collective (think the Three Gorges Dam that wrecked environmental devastation downstream, upstream and derivative effects all over China). I have made this point numerous times. And apparently (after everyone said I was crazy), it came true in China and if true was a factor that enabled China to capture an estimated 67% of the mining and 51% attack Bitcoin. Documentation of these statements is in my vaporcoin thread. 1. If the profit from shorting is greater than the reward, then it doesn't cost you anything. The free mining cost just makes it more likely you can sustain it long enough to reap your reward. How do we know the Chinese won't milk the investors while the block reward is high (mining at near $0 cost charging it the cost to the collective) and then also profit by shorting it all the way down from $1000. We are bunch of naive geeks who are being reamed (mined) by savvy traders and strategists. These are no different conceptually than Rothschild's and Rockefeller's methods of yore. The players and technological field change, the game remains the same. ( 2. Yeah I am crazy conspiracy theorist whose analysis is always wrong) Edit: haven't you been slightly suspicious of why the MSM publicized Bitcoin so much. 3. That doesn't happen without the approval the global elite. 1. You likely can't know this in advance, though in some cases you may have a high degree of certainty. There is always *some* opportunity cost, as smooth mentioned. Asking the rhetorical question "What expense?" may have set me off; sorry about that. 2. Strongly disagree. Oftentimes I find your writing and analyses insightful or at least an interesting perspective. 3. Maybe, maybe not. You are making an absolute statement, but I haven't seen particularly convincing evidence.
|
|
|
|
|