• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EST 17:27
CET 23:27
KST 07:27
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
RSL Season 3 - Playoffs Preview0RSL Season 3 - RO16 Groups C & D Preview0RSL Season 3 - RO16 Groups A & B Preview2TL.net Map Contest #21: Winners12Intel X Team Liquid Seoul event: Showmatches and Meet the Pros10
Community News
Weekly Cups (Nov 24-30): MaxPax, Clem, herO win2BGE Stara Zagora 2026 announced15[BSL21] Ro.16 Group Stage (C->B->A->D)4Weekly Cups (Nov 17-23): Solar, MaxPax, Clem win3RSL Season 3: RO16 results & RO8 bracket13
StarCraft 2
General
Chinese SC2 server to reopen; live all-star event in Hangzhou Maestros of the Game: Live Finals Preview (RO4) BGE Stara Zagora 2026 announced Weekly Cups (Nov 24-30): MaxPax, Clem, herO win SC2 Proleague Discontinued; SKT, KT, SGK, CJ disband
Tourneys
RSL Offline FInals Sea Duckling Open (Global, Bronze-Diamond) $5,000+ WardiTV 2025 Championship Constellation Cup - Main Event - Stellar Fest RSL Revival: Season 3
Strategy
Custom Maps
Map Editor closed ?
External Content
Mutation # 502 Negative Reinforcement Mutation # 501 Price of Progress Mutation # 500 Fright night Mutation # 499 Chilling Adaptation
Brood War
General
BW General Discussion Which season is the best in ASL? Data analysis on 70 million replays BGH Auto Balance -> http://bghmmr.eu/ [ASL20] Ask the mapmakers — Drop your questions
Tourneys
[Megathread] Daily Proleagues [BSL21] RO16 Group B - Sunday 21:00 CET [BSL21] RO16 Group C - Saturday 21:00 CET Small VOD Thread 2.0
Strategy
Game Theory for Starcraft How to stay on top of macro? Current Meta PvZ map balance
Other Games
General Games
Stormgate/Frost Giant Megathread ZeroSpace Megathread Nintendo Switch Thread The Perfect Game Path of Exile
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
Mafia Game Mode Feedback/Ideas TL Mafia Community Thread
Community
General
US Politics Mega-thread Things Aren’t Peaceful in Palestine Russo-Ukrainian War Thread The Big Programming Thread Artificial Intelligence Thread
Fan Clubs
White-Ra Fan Club
Media & Entertainment
[Manga] One Piece Movie Discussion! Anime Discussion Thread
Sports
2024 - 2026 Football Thread Formula 1 Discussion NBA General Discussion
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
Where to ask questions and add stream? The Automated Ban List
Blogs
James Bond movies ranking - pa…
Topin
Esports Earnings: Bigger Pri…
TrAiDoS
Thanks for the RSL
Hildegard
Saturation point
Uldridge
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1794 users

The Big Programming Thread - Page 645

Forum Index > General Forum
Post a Reply
Prev 1 643 644 645 646 647 1032 Next
Thread Rules
1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution.
2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20)
3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible.
4. Use [code] tags to format code blocks.
SixStrings
Profile Blog Joined August 2013
Germany2046 Posts
Last Edited: 2015-06-25 14:14:29
June 25 2015 14:08 GMT
#12881
I feel like I'm not getting the programmer humour or culture in here.

Are you really upset because I didn't use gender neutral language?
Why is it so awful that I did a Javascript course? I didn't know where to start and Khan advertises this as a beginning point for programming...

I suppose Javascript is like the Wonderwall of programming? Well, you gotta start somewhere...
helpman177
Profile Blog Joined June 2015
56 Posts
June 25 2015 14:20 GMT
#12882
Any language is fine.
Just make sure you actually work on a project and learn programming on the side instead of going through courses.
For example, a simple project would be a vocabulary trainer to learn Russian.
Nesserev
Profile Blog Joined January 2011
Belgium2760 Posts
June 25 2015 14:20 GMT
#12883
--- Nuked ---
Acrofales
Profile Joined August 2010
Spain18139 Posts
June 25 2015 14:36 GMT
#12884
On June 25 2015 23:08 SixStrings wrote:
I feel like I'm not getting the programmer humour or culture in here.

Are you really upset because I didn't use gender neutral language?
Why is it so awful that I did a Javascript course? I didn't know where to start and Khan advertises this as a beginning point for programming...

I suppose Javascript is like the Wonderwall of programming? Well, you gotta start somewhere...

It was more that, given the way you seem to treat girls, your address of "Hi girls", seems to be you not taking this community very seriously, which is not a good signal to send if you are asking it for advice.

Anyway, javascript has a special place in hell reserved for it (next to php and perl which are legitimately awful programming languages), not because it is terrible, but because it is omnipresent and SHOULD NOT BE.

Javascript is acceptable, and pretty good at what it does AS LONG AS IT STAYS CLIENT SIDE AND RUNS IN A BROWSER. I have a passionate hatred for Node.JS, Tizen, and all other frameworks that try to drag Javascript to places it doesn't belong, when there are FAR better languages for each of those areas (Python, Ruby and even LUA come to mind) There is too much wrong with it to want it to be prevalent.

SixStrings
Profile Blog Joined August 2013
Germany2046 Posts
Last Edited: 2015-06-25 14:47:45
June 25 2015 14:45 GMT
#12885
On June 25 2015 23:20 Nesserev wrote:
Show nested quote +
On June 25 2015 23:08 SixStrings wrote:
I feel like I'm not getting the programmer humour or culture in here.

Are you really upset because I didn't use gender neutral language?
Why is it so awful that I did a Javascript course? I didn't know where to start and Khan advertises this as a beginning point for programming...

When I said "that's awful", I was referring to the part where the girl is giving you a blowjob while calling her boyfriend. Did that really happen, lol? Anyway, wrong thread for that... There's nothing wrong with starting out with javascript.

But I think the next logical step is to stick with a scripting language like Python (take a look at the source that I linked above)... and maybe later, when you're comfortable with programming, pick up a C language, like C++ or C#.




Yeah, that happened but that's not the whole story. He's really oversimplifying it.

Anyway, I'm just waiting for the office to be empty and then I'll print out the document you linked and have a thorough read.

I'd love to do something outside of a browser, and I think Python would be splendid for that. Apparently you can just throw Python commands at Terminal, can't wait to fuck around with that.

Thanks for the advice!

On June 25 2015 23:36 Acrofales wrote:
Show nested quote +
On June 25 2015 23:08 SixStrings wrote:
I feel like I'm not getting the programmer humour or culture in here.

Are you really upset because I didn't use gender neutral language?
Why is it so awful that I did a Javascript course? I didn't know where to start and Khan advertises this as a beginning point for programming...

I suppose Javascript is like the Wonderwall of programming? Well, you gotta start somewhere...

It was more that, given the way you seem to treat girls, your address of "Hi girls", seems to be you not taking this community very seriously, which is not a good signal to send if you are asking it for advice.

Anyway, javascript has a special place in hell reserved for it (next to php and perl which are legitimately awful programming languages), not because it is terrible, but because it is omnipresent and SHOULD NOT BE.

Javascript is acceptable, and pretty good at what it does AS LONG AS IT STAYS CLIENT SIDE AND RUNS IN A BROWSER. I have a passionate hatred for Node.JS, Tizen, and all other frameworks that try to drag Javascript to places it doesn't belong, when there are FAR better languages for each of those areas (Python, Ruby and even LUA come to mind) There is too much wrong with it to want it to be prevalent.



Well, you certainly have put much more thought into that than I ever did.
spinesheath
Profile Blog Joined June 2009
Germany8679 Posts
June 25 2015 16:02 GMT
#12886
On June 25 2015 12:52 phar wrote:
Ok back up, I am confused. You are or aren't running out of memory? The initial post mentioned something about your data set getting paged out, yet you say you have only 10M edges, which should trivially fit in memory (like honestly 10M int is only 40MB or something). Where are you getting 8GB from??

I was under the impression that the data is so large that it doesn't fully fit into the cpu caches (seems likely but should be verified). If you want to get anything out of your caches, you have to keep your data in the cache for as long as possible. If you iterate 1,000 times over a sequence of 1,000,000 objects (assuming they don't fit into the cache as a whole) you will perform a lot worse than if you iterate 1,000 times over chunks of 1,000 objects each.
If you have a good reason to disagree with the above, please tell me. Thank you.
phar
Profile Joined August 2011
United States1080 Posts
June 26 2015 00:45 GMT
#12887
On June 26 2015 01:02 spinesheath wrote:
Show nested quote +
On June 25 2015 12:52 phar wrote:
Ok back up, I am confused. You are or aren't running out of memory? The initial post mentioned something about your data set getting paged out, yet you say you have only 10M edges, which should trivially fit in memory (like honestly 10M int is only 40MB or something). Where are you getting 8GB from??

I was under the impression that the data is so large that it doesn't fully fit into the cpu caches (seems likely but should be verified). If you want to get anything out of your caches, you have to keep your data in the cache for as long as possible. If you iterate 1,000 times over a sequence of 1,000,000 objects (assuming they don't fit into the cache as a whole) you will perform a lot worse than if you iterate 1,000 times over chunks of 1,000 objects each.

Yea but there's a fucking immense gap between "doesn't fit entirely in CPU cache" and "lookup takes 5 whole milliseconds". That's like almost on the order of disk access, which sounds very wrong. A memory access should take 50~100ns. Even if you've got crazy java objects inside objects inside objects, a dozen memory accesses should still be like a microsecond.
Who after all is today speaking about the destruction of the Armenians?
Blisse
Profile Blog Joined July 2010
Canada3710 Posts
Last Edited: 2015-06-26 18:43:42
June 26 2015 18:42 GMT
#12888
I didn't say it takes 5ms. I said somewhere < 5ms. I never definitively timed an access, I just did a really poor division apparently. Been busy with exams this week and I don't think there's any more optimizations possible unless I find better algorithms. Going to switch to BitSet and see if that helps with space. The numbers probably closer to 600M contains operations divided by 35 seconds to run, so like 20 us? Is that a reasonable number?

I'm not running out of memory. I'm pretty sure somehow I'm using up more RAM than I can keep in memory at once because the random accesses from the large-ish ArrayList means the parts of the list have to be swapped out too much. I have 1GB of RAM available per user from the server but my usage when I run it is about 5~8GB. It seems like the set is smaller enough to fit, but I don't know why it bloated up to 5~8GB. I'll get more up-to-date numbers later.
There is no one like you in the universe.
phar
Profile Joined August 2011
United States1080 Posts
June 27 2015 00:18 GMT
#12889
Ok wait back up, why are you doing random access to a large array list? That right there is slow, because it's a linear time operation.
Who after all is today speaking about the destruction of the Armenians?
Blisse
Profile Blog Joined July 2010
Canada3710 Posts
June 27 2015 05:41 GMT
#12890
I'm not doing random access, the edges in the graph are random so I have to retrieve the row for that edge randomly.
There is no one like you in the universe.
phar
Profile Joined August 2011
United States1080 Posts
Last Edited: 2015-06-27 18:20:54
June 27 2015 18:17 GMT
#12891
Sorry, I mean this (my terminology is probably off):

Fast:

ArrayList<Bar> foo;

for (Bar b : foo) {
something(b);
}


Fast (this is probably what you would also call random access, my fault for using wrong word sorry):

ArrayList<Bar> foo;

Bar b = foo.get(index);


Slow:

ArrayList<Bar> foo;
Bar b;

if (foo.contains(b)) {
something(b);
}



This may be easier if you just post your code, I think we're having a hard time understanding exactly what your issue is because we're just guessing as to what it is you're doing exactly. In particular that high of memory usage seems wrong if your algorithm is supposed to be linaer space (it is linear space, yea? you're not using one of those crazy node^2.4 time / node^2 space complexity algorithms, right?)

20 microseconds for a single access into a HashSet or ImmutableSet still sounds kinda high. Though, for example, if you're using ImmutableSet and on an old version, there are some hilariously degenerate cases where a contains could take ~ms.
Who after all is today speaking about the destruction of the Armenians?
solidbebe
Profile Blog Joined November 2010
Netherlands4921 Posts
June 27 2015 18:52 GMT
#12892
I might be wrong here, but since arraylist is an implemented list in java, the get method shouldnt really be faster than contains depending on which element in the list you want to retrieve.
That's the 2nd time in a week I've seen someone sig a quote from this GD and I have never witnessed a sig quote happen in my TL history ever before. -Najda
phar
Profile Joined August 2011
United States1080 Posts
June 27 2015 19:00 GMT
#12893
contains on arraylist is linear, get is constant

I think Blisse's .contains calls are on HashSet or ImmutableSet or something, which should be constant (though for some cases it can be linear, which leads to all sorts of craziness). But, hard to say without seeing the code.
Who after all is today speaking about the destruction of the Armenians?
solidbebe
Profile Blog Joined November 2010
Netherlands4921 Posts
June 27 2015 19:28 GMT
#12894
Well i was wrong , I looked it up and youre right. Get is constant time for arraylists.
That's the 2nd time in a week I've seen someone sig a quote from this GD and I have never witnessed a sig quote happen in my TL history ever before. -Najda
Ben...
Profile Joined January 2011
Canada3485 Posts
June 28 2015 02:42 GMT
#12895
On June 25 2015 23:36 Acrofales wrote:
Anyway, javascript has a special place in hell reserved for it (next to php and perl which are legitimately awful programming languages), not because it is terrible, but because it is omnipresent and SHOULD NOT BE.

Javascript is acceptable, and pretty good at what it does AS LONG AS IT STAYS CLIENT SIDE AND RUNS IN A BROWSER. I have a passionate hatred for Node.JS, Tizen, and all other frameworks that try to drag Javascript to places it doesn't belong, when there are FAR better languages for each of those areas (Python, Ruby and even LUA come to mind) There is too much wrong with it to want it to be prevalent.


I would totally give you a high five if I saw you in person.

Seriously, why do people seem to think Javascript needs to be used for everything? Are they just lazy? Dumb? Both? Learning another programming language is not a difficult thing to do.

"Cliiiiiiiiiiiiiiiiide" -Tastosis
Manit0u
Profile Blog Joined August 2004
Poland17495 Posts
June 28 2015 14:50 GMT
#12896
On June 28 2015 11:42 Ben... wrote:
Show nested quote +
On June 25 2015 23:36 Acrofales wrote:
Anyway, javascript has a special place in hell reserved for it (next to php and perl which are legitimately awful programming languages), not because it is terrible, but because it is omnipresent and SHOULD NOT BE.

Javascript is acceptable, and pretty good at what it does AS LONG AS IT STAYS CLIENT SIDE AND RUNS IN A BROWSER. I have a passionate hatred for Node.JS, Tizen, and all other frameworks that try to drag Javascript to places it doesn't belong, when there are FAR better languages for each of those areas (Python, Ruby and even LUA come to mind) There is too much wrong with it to want it to be prevalent.


I would totally give you a high five if I saw you in person.

Seriously, why do people seem to think Javascript needs to be used for everything? Are they just lazy? Dumb? Both? Learning another programming language is not a difficult thing to do.



Most people think that if something "can" be used in a certain way, then it definitely "should".

And jus adding personal, unrelated rant:

Work planned to take 2 weeks with 6 people on the team. 4 people get transferred to final bugfixing for other critical project release. End up with 2 people (me and one other dude) and 1 week to get it all done. We almost made it, but I feel like a zombie right now after having spent 7 days working hard each day of the week. Still, 90% of the stuff was done and I am damn proud we managed to pull off that much.
Time is precious. Waste it wisely.
sabas123
Profile Blog Joined December 2010
Netherlands3122 Posts
June 29 2015 10:37 GMT
#12897
On June 28 2015 23:50 Manit0u wrote:
Show nested quote +
On June 28 2015 11:42 Ben... wrote:
On June 25 2015 23:36 Acrofales wrote:
Anyway, javascript has a special place in hell reserved for it (next to php and perl which are legitimately awful programming languages), not because it is terrible, but because it is omnipresent and SHOULD NOT BE.

Javascript is acceptable, and pretty good at what it does AS LONG AS IT STAYS CLIENT SIDE AND RUNS IN A BROWSER. I have a passionate hatred for Node.JS, Tizen, and all other frameworks that try to drag Javascript to places it doesn't belong, when there are FAR better languages for each of those areas (Python, Ruby and even LUA come to mind) There is too much wrong with it to want it to be prevalent.


I would totally give you a high five if I saw you in person.

Seriously, why do people seem to think Javascript needs to be used for everything? Are they just lazy? Dumb? Both? Learning another programming language is not a difficult thing to do.



Most people think that if something "can" be used in a certain way, then it definitely "should".

And jus adding personal, unrelated rant:

Work planned to take 2 weeks with 6 people on the team. 4 people get transferred to final bugfixing for other critical project release. End up with 2 people (me and one other dude) and 1 week to get it all done. We almost made it, but I feel like a zombie right now after having spent 7 days working hard each day of the week. Still, 90% of the stuff was done and I am damn proud we managed to pull off that much.

wow wtf, you didnt got extra time for that stuff even while 75% of your teams capacity was pulled out?
The harder it becomes, the more you should focus on the basics.
Manit0u
Profile Blog Joined August 2004
Poland17495 Posts
June 29 2015 13:03 GMT
#12898
On June 29 2015 19:37 sabas123 wrote:
Show nested quote +
On June 28 2015 23:50 Manit0u wrote:
And jus adding personal, unrelated rant:

Work planned to take 2 weeks with 6 people on the team. 4 people get transferred to final bugfixing for other critical project release. End up with 2 people (me and one other dude) and 1 week to get it all done. We almost made it, but I feel like a zombie right now after having spent 7 days working hard each day of the week. Still, 90% of the stuff was done and I am damn proud we managed to pull off that much.

wow wtf, you didnt got extra time for that stuff even while 75% of your teams capacity was pulled out?


Life's not a fairy tale
Time is precious. Waste it wisely.
Acrofales
Profile Joined August 2010
Spain18139 Posts
June 29 2015 13:29 GMT
#12899
On June 29 2015 19:37 sabas123 wrote:
Show nested quote +
On June 28 2015 23:50 Manit0u wrote:
On June 28 2015 11:42 Ben... wrote:
On June 25 2015 23:36 Acrofales wrote:
Anyway, javascript has a special place in hell reserved for it (next to php and perl which are legitimately awful programming languages), not because it is terrible, but because it is omnipresent and SHOULD NOT BE.

Javascript is acceptable, and pretty good at what it does AS LONG AS IT STAYS CLIENT SIDE AND RUNS IN A BROWSER. I have a passionate hatred for Node.JS, Tizen, and all other frameworks that try to drag Javascript to places it doesn't belong, when there are FAR better languages for each of those areas (Python, Ruby and even LUA come to mind) There is too much wrong with it to want it to be prevalent.


I would totally give you a high five if I saw you in person.

Seriously, why do people seem to think Javascript needs to be used for everything? Are they just lazy? Dumb? Both? Learning another programming language is not a difficult thing to do.



Most people think that if something "can" be used in a certain way, then it definitely "should".

And jus adding personal, unrelated rant:

Work planned to take 2 weeks with 6 people on the team. 4 people get transferred to final bugfixing for other critical project release. End up with 2 people (me and one other dude) and 1 week to get it all done. We almost made it, but I feel like a zombie right now after having spent 7 days working hard each day of the week. Still, 90% of the stuff was done and I am damn proud we managed to pull off that much.

wow wtf, you didnt got extra time for that stuff even while 75% of your teams capacity was pulled out?


Welcome to the real world.
bangsholt
Profile Joined June 2011
Denmark138 Posts
June 29 2015 17:13 GMT
#12900
Meh - software engineering and computer science has this thing, where if you only work for the 40 hours you're supposed to and request actual overtime payment for your overtime. You're not a real programmer.

I'm very content with not being a real programmer
Prev 1 643 644 645 646 647 1032 Next
Please log in or register to reply.
Live Events Refresh
Next event in 1h 33m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
CosmosSc2 11
elazer 4
StarCraft: Brood War
Calm 2138
Shuttle 451
Larva 161
Dewaltoss 109
Dota 2
syndereN1104
Counter-Strike
fl0m980
Foxcn475
Heroes of the Storm
Liquid`Hasu566
Other Games
Grubby6786
FrodaN1009
RotterdaM190
C9.Mang0113
ArmadaUGS88
Maynarde66
ZombieGrub26
Organizations
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 18 non-featured ]
StarCraft 2
• HeavenSC 72
• musti20045 33
• IndyKCrew
• Migwel
• sooper7s
• AfreecaTV YouTube
• intothetv
• Kozan
• LaughNgamezSOOP
StarCraft: Brood War
• RayReign 1
• STPLYoutube
• ZZZeroYoutube
• BSLYoutube
Dota 2
• Ler127
League of Legends
• Doublelift2435
• TFBlade1245
Other Games
• imaqtpie1390
• Shiphtur490
Upcoming Events
Replay Cast
1h 33m
The PondCast
11h 33m
OSC
17h 33m
Demi vs Mixu
Nicoract vs TBD
Babymarine vs MindelVK
ForJumy vs TBD
Shameless vs Percival
Replay Cast
1d 1h
Korean StarCraft League
2 days
CranKy Ducklings
2 days
WardiTV 2025
2 days
SC Evo League
2 days
BSL 21
2 days
Sziky vs OyAji
Gypsy vs eOnzErG
OSC
2 days
Solar vs Creator
ByuN vs Gerald
Percival vs Babymarine
Moja vs Krystianer
EnDerr vs ForJumy
sebesdes vs Nicoract
[ Show More ]
Sparkling Tuna Cup
3 days
WardiTV 2025
3 days
OSC
3 days
BSL 21
3 days
Bonyth vs StRyKeR
Tarson vs Dandy
Replay Cast
4 days
Wardi Open
4 days
StarCraft2.fi
4 days
Monday Night Weeklies
4 days
Replay Cast
5 days
WardiTV 2025
5 days
StarCraft2.fi
5 days
PiGosaur Monday
6 days
StarCraft2.fi
6 days
Liquipedia Results

Completed

Proleague 2025-11-30
RSL Revival: Season 3
Light HT

Ongoing

C-Race Season 1
IPSL Winter 2025-26
KCM Race Survival 2025 Season 4
YSL S2
BSL Season 21
CSCL: Masked Kings S3
Slon Tour Season 2
Acropolis #4 - TS3
META Madness #9
SL Budapest Major 2025
ESL Impact League Season 8
BLAST Rivals Fall 2025
IEM Chengdu 2025
PGL Masters Bucharest 2025
Thunderpick World Champ.
CS Asia Championships 2025
ESL Pro League S22
StarSeries Fall 2025
FISSURE Playground #2

Upcoming

BSL 21 Non-Korean Championship
Acropolis #4
IPSL Spring 2026
Bellum Gens Elite Stara Zagora 2026
HSC XXVIII
RSL Offline Finals
WardiTV 2025
Kuram Kup
PGL Cluj-Napoca 2026
IEM Kraków 2026
BLAST Bounty Winter 2026
BLAST Bounty Winter Qual
eXTREMESLAND 2025
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2025 TLnet. All Rights Reserved.