• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 12:18
CEST 18:18
KST 01:18
  • 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
Code S Season 1 - RO12 Group A: Rogue, Percival, Solar, Zoun11[ASL21] Ro8 Preview Pt1: Inheritors16[ASL21] Ro16 Preview Pt2: All Star10Team Liquid Map Contest #22 - The Finalists22[ASL21] Ro16 Preview Pt1: Fresh Flow9
Community News
2026 GSL Season 1 Qualifiers25Maestros of the Game 2 announced92026 GSL Tour plans announced15Weekly Cups (April 6-12): herO doubles, "Villains" prevail1MaNa leaves Team Liquid25
StarCraft 2
General
Team Liquid Map Contest #22 - The Finalists Code S Season 1 - RO12 Group A: Rogue, Percival, Solar, Zoun Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool MaNa leaves Team Liquid Maestros of the Game 2 announced
Tourneys
GSL Code S Season 1 (2026) SC2 INu's Battles#15 <BO.9 2Matches> WardiTV Spring Cup RSL Revival: Season 5 - Qualifiers and Main Event SEL Masters #6 - Solar vs Classic (SC: Evo)
Strategy
Custom Maps
[D]RTS in all its shapes and glory <3 [A] Nemrods 1/4 players [M] (2) Frigid Storage
External Content
The PondCast: SC2 News & Results Mutation # 523 Firewall Mutation # 522 Flip My Base Mutation # 521 Memorable Boss
Brood War
General
Data needed Pros React To: Leta vs Tulbo (ASL S21, Ro.8) ASL21 General Discussion [TOOL] Starcraft Chat Translator JaeDong's ASL S21 Ro16 Post-Review
Tourneys
Escore Tournament StarCraft Season 2 [Megathread] Daily Proleagues [ASL21] Ro8 Day 2 [ASL21] Ro8 Day 1
Strategy
Fighting Spirit mining rates Simple Questions, Simple Answers What's the deal with APM & what's its true value Any training maps people recommend?
Other Games
General Games
Daigo vs Menard Best of 10 Stormgate/Frost Giant Megathread Nintendo Switch Thread Dawn of War IV Diablo IV
Dota 2
The Story of Wings Gaming
League of Legends
G2 just beat GenG in First stand
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
Vanilla Mini Mafia Mafia Game Mode Feedback/Ideas TL Mafia Community Thread Five o'clock TL Mafia
Community
General
US Politics Mega-thread European Politico-economics QA Mega-thread Russo-Ukrainian War Thread 3D technology/software discussion Canadian Politics Mega-thread
Fan Clubs
The IdrA Fan Club
Media & Entertainment
[Manga] One Piece Anime Discussion Thread [Req][Books] Good Fantasy/SciFi books Movie Discussion!
Sports
2024 - 2026 Football Thread McBoner: A hockey love story Formula 1 Discussion
World Cup 2022
Tech Support
streaming software Strange computer issues (software) [G] How to Block Livestream Ads
TL Community
The Automated Ban List
Blogs
Sexual Health Of Gamers
TrAiDoS
lurker extra damage testi…
StaticNine
Broowar part 2
qwaykee
Funny Nicknames
LUCKY_NOOB
Iranian anarchists: organize…
XenOsky
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1989 users

The Big Programming Thread - Page 937

Forum Index > General Forum
Post a Reply
Prev 1 935 936 937 938 939 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.
sc-darkness
Profile Joined August 2017
856 Posts
January 10 2018 23:57 GMT
#18721
On January 09 2018 07:51 travis wrote:
Show nested quote +
On January 09 2018 04:57 dsyxelic wrote:
has anyone here had a situation where they regret rejecting a perfectly decent looking offer because they are in the interview process/final rounds with companies they like better and would be better for their career?

i might have to do that and am not sure what i will regret more, not taking the risk and finishing up with the other companies or not taking a perfectly fine job. cannot delay deadlines anymore and assume no reneging (its a clusterfuck since it's a coop)


The advice I have always seen is to delay as long as possible, while informing the other companies of your situation.


Yeah, don't fall between two stools.
Hanh
Profile Joined June 2016
146 Posts
January 11 2018 00:36 GMT
#18722
On January 11 2018 07:51 WarSame wrote:

Sure, but I'm making mistakes in an unreleased app and asking for feedback. That seems like an ideal security learning, right? The problem is I didn't get specific feedback on security when I originally asked for it. I got scorched for having improper security rather than getting feedback. Then you and a few others gave me good, specific, actionable feedback, which helped quite a bit.

I understand security is difficult. I understand why you need professionals. If this were an enterprise app I would obviously hire professionals, but this is just for learning.

Taking a course is a good recommendation, but I think the time invested to reward of that would be minimal for me.


Well, I guess the point that people want to make here is that security is too hard for this forum. Though I would argue that in your case I don't see any cause for alarm. You are not releasing it and are well aware of the risks involved. But you won't have much feedback here. Like most things, it is not black and white. You want to have just the right level of security without too much inconvenience and cost. Otherwise we would have biometric scanners on every door of our homes. I think a more reasonable recommendation is (if you care about the app's security)
1. learn the pro/con of the different security schemes
2. know how to pick which one is suitable for your requirements
3. never try to invent your own scheme
4. never try to re-implement a known scheme either
tofucake
Profile Blog Joined October 2009
Hyrule19209 Posts
January 11 2018 02:21 GMT
#18723
On January 11 2018 07:51 WarSame wrote:
Show nested quote +
On January 10 2018 20:45 Hanh wrote:
On January 10 2018 13:41 WarSame wrote:
Do you honestly think "go learn security" is even advice at all? It's a recommendation at most. Further, one of the best ways to learn is by doing and making mistakes. I posted my code and asked for feedback. I got none. So thanks for that.


Let's call it a strong recommendation. Making mistakes in security is not a good way to learn. Either:
1. your project doesn't require much security. You mess up and there is no consequence. You didn't learn anything because no one cared enough to attack your system and it seemed to work.
2. your project requires strong security. You mess up and it's a shit storm. Lots of people are angry.

See, ... you can't get it right. It's just too hard. They tell you to learn about security because you should have an idea of how difficult it is. If you are not, then let's hope that what you do does not need to be secure.

Coursera has a course Cryptography I which is quite good. And there are plenty of books too.

Sure, but I'm making mistakes in an unreleased app and asking for feedback. That seems like an ideal security learning, right? The problem is I didn't get specific feedback on security when I originally asked for it. I got scorched for having improper security rather than getting feedback. Then you and a few others gave me good, specific, actionable feedback, which helped quite a bit.

I understand security is difficult. I understand why you need professionals. If this were an enterprise app I would obviously hire professionals, but this is just for learning.

Taking a course is a good recommendation, but I think the time invested to reward of that would be minimal for me.


yes you did, you even ignored the part where we said "don't use SHA-256, it's bad" and used SHA-256
Liquipediaasante sana squash banana
WarSame
Profile Blog Joined February 2010
Canada1950 Posts
January 11 2018 03:13 GMT
#18724
Fair enough. I meant "originally" as in when I actually posted my code/github a few pages ago, though you are right that your link has my first security questions. I recognize "originally" was a misleading word.
Can it be I stayed away too long? Did you miss these rhymes while I was gone?
bo1b
Profile Blog Joined August 2012
Australia12814 Posts
January 11 2018 05:39 GMT
#18725
Please go and take mooc on it or something, it's not exactly something you can pick up on a forum.
Manit0u
Profile Blog Joined August 2004
Poland17740 Posts
January 11 2018 08:39 GMT
#18726
Man, we have a really annoying client. They want us to optimize our app deployment process because it's taking too long in their opinion (52 seconds on their machines).
Time is precious. Waste it wisely.
Acrofales
Profile Joined August 2010
Spain18283 Posts
January 11 2018 08:57 GMT
#18727
On January 11 2018 17:39 Manit0u wrote:
Man, we have a really annoying client. They want us to optimize our app deployment process because it's taking too long in their opinion (52 seconds on their machines).

Hm. 52 seconds seems long to wait for app deployment. I'd probably complain too. If all their employees open and close the apps a lot, that's a lot of wasted time.

Whether you should pay attention to it depends on whether it can reasonably be sped up, whether your competitors have better speed properties and how much the client is paying you.

If I misunderstood and it has nothing to do with client side load time, but is the time it takes for your devs to deploy updated versions, then lol.
Manit0u
Profile Blog Joined August 2004
Poland17740 Posts
Last Edited: 2018-01-11 11:53:40
January 11 2018 11:52 GMT
#18728
On January 11 2018 17:57 Acrofales wrote:
Show nested quote +
On January 11 2018 17:39 Manit0u wrote:
Man, we have a really annoying client. They want us to optimize our app deployment process because it's taking too long in their opinion (52 seconds on their machines).

Hm. 52 seconds seems long to wait for app deployment. I'd probably complain too. If all their employees open and close the apps a lot, that's a lot of wasted time.

Whether you should pay attention to it depends on whether it can reasonably be sped up, whether your competitors have better speed properties and how much the client is paying you.

If I misunderstood and it has nothing to do with client side load time, but is the time it takes for your devs to deploy updated versions, then lol.


It's the time it takes to deploy it to the servers and has nothing to do with client-side load times.

Also, it's pretty hard for us to optimize it any further. On our servers it takes 15 seconds to deploy...
Time is precious. Waste it wisely.
Acrofales
Profile Joined August 2010
Spain18283 Posts
Last Edited: 2018-01-11 13:53:24
January 11 2018 13:52 GMT
#18729
On January 11 2018 20:52 Manit0u wrote:
Show nested quote +
On January 11 2018 17:57 Acrofales wrote:
On January 11 2018 17:39 Manit0u wrote:
Man, we have a really annoying client. They want us to optimize our app deployment process because it's taking too long in their opinion (52 seconds on their machines).

Hm. 52 seconds seems long to wait for app deployment. I'd probably complain too. If all their employees open and close the apps a lot, that's a lot of wasted time.

Whether you should pay attention to it depends on whether it can reasonably be sped up, whether your competitors have better speed properties and how much the client is paying you.

If I misunderstood and it has nothing to do with client side load time, but is the time it takes for your devs to deploy updated versions, then lol.


It's the time it takes to deploy it to the servers and has nothing to do with client-side load times.

Also, it's pretty hard for us to optimize it any further. On our servers it takes 15 seconds to deploy...


Then I don't get it. Why does your client have to deploy often enough that they care about how long it takes?!

In fact, why does your client have to deploy at all? Are they too cheap for a service contract?
Manit0u
Profile Blog Joined August 2004
Poland17740 Posts
January 11 2018 14:58 GMT
#18730
On January 11 2018 22:52 Acrofales wrote:
Show nested quote +
On January 11 2018 20:52 Manit0u wrote:
On January 11 2018 17:57 Acrofales wrote:
On January 11 2018 17:39 Manit0u wrote:
Man, we have a really annoying client. They want us to optimize our app deployment process because it's taking too long in their opinion (52 seconds on their machines).

Hm. 52 seconds seems long to wait for app deployment. I'd probably complain too. If all their employees open and close the apps a lot, that's a lot of wasted time.

Whether you should pay attention to it depends on whether it can reasonably be sped up, whether your competitors have better speed properties and how much the client is paying you.

If I misunderstood and it has nothing to do with client side load time, but is the time it takes for your devs to deploy updated versions, then lol.


It's the time it takes to deploy it to the servers and has nothing to do with client-side load times.

Also, it's pretty hard for us to optimize it any further. On our servers it takes 15 seconds to deploy...


Then I don't get it. Why does your client have to deploy often enough that they care about how long it takes?!

In fact, why does your client have to deploy at all? Are they too cheap for a service contract?


They have their own, huge IT department. Supposedly deployment taking this long breaks their Kubernetes in some way.
Time is precious. Waste it wisely.
Silvanel
Profile Blog Joined March 2003
Poland4751 Posts
Last Edited: 2018-01-11 16:31:14
January 11 2018 16:26 GMT
#18731
So i have problem with Selenium, running Firefox and Python 3.6.2. I am navigating trough webpage and need to open and select item from menu which is normaly opened by right click. And i have problem scrolling trough that menu.

Both:

install_download = wait.until(EC.element_to_be_clickable((By.XPATH, paths['install_download'])))
install_download.click()
actions = ActionChains(driver)
actions.context_click(install_download)
actions.send_keys(Keys.ARROW_DOWN)
actions.send_keys(Keys.RETURN)
actions.perform()

and

install_download = wait.until(EC.element_to_be_clickable((By.XPATH, paths['install_download'])))
install_download.click()
actions = ActionChains(driver)
actions.context_click(install_download).send_keys(Keys.ARROW_DOWN).send_keys(Keys.RETURN).perform()

Fail. Menu is opened but no move down (or enter) is performed.

While with usage of pyautogui it is succesfull.

install_download = wait.until(EC.element_to_be_clickable((By.XPATH, paths['install_download'])))
install_download.click()
actions = ActionChains(driver)
actions.context_click(install_download)
time.sleep(2)
pyautogui.press('down')
pyautogui.press('enter')

However i cant use pyautogui since it makes a lot of problems when running with screen locked (unless You have fix to that). Pressing down manually on keyboard also works.
Pathetic Greta hater.
Manit0u
Profile Blog Joined August 2004
Poland17740 Posts
Last Edited: 2018-01-11 18:45:21
January 11 2018 18:42 GMT
#18732
On January 12 2018 01:26 Silvanel wrote:
So i have problem with Selenium, running Firefox and Python 3.6.2. I am navigating trough webpage and need to open and select item from menu which is normaly opened by right click. And i have problem scrolling trough that menu.

Both:

install_download = wait.until(EC.element_to_be_clickable((By.XPATH, paths['install_download'])))
install_download.click()
actions = ActionChains(driver)
actions.context_click(install_download)
actions.send_keys(Keys.ARROW_DOWN)
actions.send_keys(Keys.RETURN)
actions.perform()

and

install_download = wait.until(EC.element_to_be_clickable((By.XPATH, paths['install_download'])))
install_download.click()
actions = ActionChains(driver)
actions.context_click(install_download).send_keys(Keys.ARROW_DOWN).send_keys(Keys.RETURN).perform()

Fail. Menu is opened but no move down (or enter) is performed.

While with usage of pyautogui it is succesfull.

install_download = wait.until(EC.element_to_be_clickable((By.XPATH, paths['install_download'])))
install_download.click()
actions = ActionChains(driver)
actions.context_click(install_download)
time.sleep(2)
pyautogui.press('down')
pyautogui.press('enter')

However i cant use pyautogui since it makes a lot of problems when running with screen locked (unless You have fix to that). Pressing down manually on keyboard also works.


Have you tried using submit() instead of perform()? You could also try with ENTER instead of RETURN (and I don't know if you need perform after return, another thing to test would be to try arrow_down and then submit).
Time is precious. Waste it wisely.
Silvanel
Profile Blog Joined March 2003
Poland4751 Posts
January 11 2018 21:13 GMT
#18733
I did try "ENTER" and also u'\ue007' both dont help here. But havent tried submit(). Will look at it tomorrow.

Also i looked closely at documentation of ActionChains and i suspect this might be some tricky thing releted to focus, will test it.
Pathetic Greta hater.
spinesheath
Profile Blog Joined June 2009
Germany8679 Posts
January 12 2018 19:49 GMT
#18734
Javascript.

Can someone explain why this works:
txt.split("\n").map(x => parseInt(x))

But this only works for some lines:
txt.split("\n").map(parseInt)

In fact in this latter case, only the first number is correct, the rest is either NaN or some completely different number, yet still within a factor of 10 or so of the correct number.

I wouldn't even know where to look up the difference between those... I'm not even sure I want to know about this...
If you have a good reason to disagree with the above, please tell me. Thank you.
slmw
Profile Blog Joined October 2010
Finland233 Posts
January 12 2018 21:12 GMT
#18735
It seems parseInt takes two parameters (string, radix). Array.map will pass your function three parameters (value, index, array). The first one, the value of the element, will be used as the string input to parseInt. The second one, the index in the array, will be used as the radix. Therefore all your calls to parseInt will use a different radix and life is hard.
dark.matter
Profile Joined April 2017
179 Posts
January 12 2018 21:15 GMT
#18736
Does anybody know how to identify which unit types are associated to unit ids in any action, such as select or attack move from rep data? I'd like to use screp (https://github.com/icza/screp) for some analysis.
sc-darkness
Profile Joined August 2017
856 Posts
January 12 2018 21:54 GMT
#18737
How many interviews does it take you to get a job offer and how many years of experience do you have?
Excludos
Profile Blog Joined April 2010
Norway8254 Posts
Last Edited: 2018-01-12 22:08:22
January 12 2018 22:06 GMT
#18738
On January 13 2018 06:54 sc-darkness wrote:
How many interviews does it take you to get a job offer and how many years of experience do you have?


Not sure if this was directed to anyone specific but I can answer for myself:

My first job I got dirt lucky on. While I was working part time during my studies, a guy overheard me trying to explain what a dual band router was to a customer, asked me what I was, and handed me a job interview when he found out I was studying CS. Had the job soon after. (I also applied and got an interview for another place, which I ended up not getting)

After quitting that job a year and some months later I applied for like 20 jobs, went to 5-6 job interviews, and got nothing. After a while a buddy from school landed me a job interview for his workplace, which accepted me soon after. So everyone claiming "connections is key" was, at least in my case, 100% true. Knowing someone somewhere makes everything so much easier.

That said, now that I have 3 years of experience, I don't think I would have any trouble landing another job if I was to lose this one. It's most difficult coming fresh out of school
Lmui
Profile Joined November 2010
Canada6223 Posts
January 12 2018 22:11 GMT
#18739
When I was in University, for my internship, I shot out probably 15? resumes to various positions. I got 2 interviews, 1 job offer. I took the job, was pretty happy about where I was working and made a good impression.

After I graduated, I took ~6 months off to relax, then I put in one application back to the same company where I did my internship, and got the job offer about about 3 hours later.

If you have connections, life is easy. Referrals are also helpful, especially if the person the referral comes from is in the same department/role as the applicant.
shz
Profile Blog Joined October 2010
Germany2687 Posts
Last Edited: 2018-01-12 23:37:07
January 12 2018 23:36 GMT
#18740
On January 13 2018 06:12 slmw wrote:
It seems parseInt takes two parameters (string, radix). Array.map will pass your function three parameters (value, index, array). The first one, the value of the element, will be used as the string input to parseInt. The second one, the index in the array, will be used as the radix. Therefore all your calls to parseInt will use a different radix and life is hard.


^ this.

You could do stuff like

const intParser = string => parseInt(string, 10)

const parsedInts = yourArray.map(intParser)


or (if you want to use different radixes at times):


const makeIntParser = radix => string => parseInt(string, radix)

const intParser10 = makeIntParser(10)

const parsedInts = yourArray.map(intParser10)


It can be worth it if you need to reuse this again, otherwise

const parsedInts = yourArray.map(x => parseInt(x,10))


is still concise enough.
Liquipedia
Prev 1 935 936 937 938 939 1032 Next
Please log in or register to reply.
Live Events Refresh
Big Brain Bouts
16:00
#114
TriGGeR vs Percival
RotterdaM775
Liquipedia
OSC
13:00
King of the Hill #246
WardiTV678
TKL 261
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
RotterdaM 775
TKL 261
MindelVK 24
JuggernautJason24
ProTech23
UpATreeSC 21
StarCraft: Brood War
Britney 35576
Calm 5046
Sea 2347
Mini 773
Shuttle 557
firebathero 441
EffOrt 363
BeSt 264
Leta 236
ggaemo 233
[ Show more ]
Hyuk 187
Hyun 108
Dewaltoss 96
Sharp 91
ToSsGirL 51
Sea.KH 45
Hm[arnc] 44
Barracks 32
Free 30
Rock 25
yabsab 22
scan(afreeca) 20
Terrorterran 16
910 16
GoRush 14
Shine 14
IntoTheRainbow 12
SilentControl 12
Sacsri 9
JulyZerg 7
Dota 2
Gorgc5540
qojqva1951
monkeys_forever326
syndereN263
Other Games
Grubby4253
singsing2184
FrodaN913
B2W.Neo857
hiko761
Hui .172
crisheroes171
ArmadaUGS88
QueenE74
ViBE71
Trikslyr44
KnowMe29
Organizations
Dota 2
PGL Dota 2 - Main Stream60
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 15 non-featured ]
StarCraft 2
• Adnapsc2 14
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• Michael_bg 4
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Nemesis3911
Other Games
• WagamamaTV301
• Shiphtur211
Upcoming Events
Replay Cast
7h 42m
Replay Cast
16h 42m
RSL Revival
17h 42m
Classic vs GgMaChine
Rogue vs Maru
WardiTV Invitational
18h 42m
Percival vs Shameless
ByuN vs YoungYakov
IPSL
23h 42m
Ret vs Art_Of_Turtle
Radley vs TBD
BSL
1d 2h
Replay Cast
1d 7h
RSL Revival
1d 17h
herO vs TriGGeR
NightMare vs Solar
uThermal 2v2 Circuit
1d 21h
BSL
2 days
[ Show More ]
IPSL
2 days
eOnzErG vs TBD
G5 vs Nesh
Patches Events
2 days
Replay Cast
2 days
Wardi Open
2 days
Afreeca Starleague
2 days
Jaedong vs Light
Monday Night Weeklies
2 days
Replay Cast
3 days
Sparkling Tuna Cup
3 days
Afreeca Starleague
3 days
Snow vs Flash
WardiTV Invitational
3 days
GSL
4 days
Classic vs Cure
Maru vs Rogue
GSL
5 days
SHIN vs Zoun
ByuN vs herO
Replay Cast
6 days
Escore
6 days
The PondCast
6 days
WardiTV Invitational
6 days
Liquipedia Results

Completed

Proleague 2026-04-30
WardiTV TLMC #16
Nations Cup 2026

Ongoing

BSL Season 22
ASL Season 21
CSL 2026 SPRING (S20)
IPSL Spring 2026
KCM Race Survival 2026 Season 2
Escore Tournament S2: W5
KK 2v2 League Season 1
SCTL 2026 Spring
2026 GSL S1
BLAST Rivals Spring 2026
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
BLAST Open Spring 2026
ESL Pro League S23 Finals
ESL Pro League S23 Stage 1&2
PGL Cluj-Napoca 2026

Upcoming

Acropolis #4
BSL 22 Non-Korean Championship
CSLAN 4
Kung Fu Cup 2026 Grand Finals
HSC XXIX
uThermal 2v2 2026 Main Event
Maestros of the Game 2
2026 GSL S2
RSL Revival: Season 5
XSE Pro League 2026
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026
Asian Champions League 2026
IEM Atlanta 2026
PGL Astana 2026
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 © 2026 TLnet. All Rights Reserved.