• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 23:09
CEST 05:09
KST 12:09
  • 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 - RO8 Preview1[ASL21] Ro8 Preview Pt2: Progenitors8Code S Season 1 - RO12 Group A: Rogue, Percival, Solar, Zoun13[ASL21] Ro8 Preview Pt1: Inheritors16[ASL21] Ro16 Preview Pt2: All Star10
Community News
Weekly Cups (April 27-May 4): Clem takes triple0RSL Revival: Season 5 - Qualifiers and Main Event11Code S Season 1 (2026) - RO12 Results12026 GSL Season 1 Qualifiers25Maestros of the Game 2 announced9
StarCraft 2
General
Code S Season 1 - RO8 Preview Behind the Blue - Team Liquid History Book Weekly Cups (April 27-May 4): Clem takes triple Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool Code S Season 1 (2026) - RO12 Results
Tourneys
GSL Code S Season 1 (2026) Sparkling Tuna Cup - Weekly Open Tournament RSL Revival: Season 5 - Qualifiers and Main Event StarCraft Evolution League (SC Evo Biweekly) 2026 GSL Season 2 Qualifiers
Strategy
Custom Maps
[D]RTS in all its shapes and glory <3 [A] Nemrods 1/4 players [M] (2) Frigid Storage
External Content
Mutation # 524 Death and Taxes The PondCast: SC2 News & Results Mutation # 523 Firewall Mutation # 522 Flip My Base
Brood War
General
BGH Auto Balance -> http://bghmmr.eu/ BW General Discussion Do we have a pimpest plays list? AI Question ASL21 General Discussion
Tourneys
[ASL21] Ro8 Day 4 [Megathread] Daily Proleagues [ASL21] Ro8 Day 3 [ASL21] Ro8 Day 2
Strategy
Simple Questions, Simple Answers Fighting Spirit mining rates What's the deal with APM & what's its true value Any training maps people recommend?
Other Games
General Games
Stormgate/Frost Giant Megathread Dawn of War IV OutLive 25 (RTS Game) Daigo vs Menard Best of 10 Nintendo Switch Thread
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
Anime Discussion Thread [Manga] One Piece [Req][Books] Good Fantasy/SciFi books
Sports
2024 - 2026 Football Thread Formula 1 Discussion McBoner: A hockey love story
World Cup 2022
Tech Support
streaming software Strange computer issues (software) [G] How to Block Livestream Ads
TL Community
The Automated Ban List
Blogs
Movie Stars In Video Games: …
TrAiDoS
ramps on octagon
StaticNine
Broowar part 2
qwaykee
Funny Nicknames
LUCKY_NOOB
Customize Sidebar...

Website Feedback

Closed Threads



Active: 1748 users

The Big Programming Thread - Page 531

Forum Index > General Forum
Post a Reply
Prev 1 529 530 531 532 533 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.
Birdie
Profile Blog Joined August 2007
New Zealand4438 Posts
October 18 2014 03:09 GMT
#10601
Homework question for Haskell. I'm trying to take a list and return a new list of every value which is not the same as the next value, e.g. notEqual [1,1,2,3,4,4,5,6] returns [1,2,3,4,5,6]. The trick is I have to do it only using list comprehension and inbuilt library functions. I can do it using recursion easily enough but I guess I don't understand list comprehension well enough to know how to do it.
Red classic | A butterfly dreamed he was Zhuangzi | 4.5k, heading to 5k as support!
Shield
Profile Blog Joined August 2009
Bulgaria4824 Posts
October 18 2014 08:37 GMT
#10602
On October 18 2014 04:49 FFGenerations wrote:
any of you guys use a saddle style chair?

this looks like the affordable UK website (150-165)

what the fuck is up with this website design tho? who makes a website like this??
http://www.beautelle.co.uk/company/

direct link http://www.beautelle.co.uk/water/ergonomic posture saddle stools.htm

maybe this one is better
http://www.tronus.eu/en/saddlestool-standard.html?id=8538440


Even though it assures it's good for back, I'd still go with a simple office chair.
CatNzHat
Profile Blog Joined February 2011
United States1599 Posts
October 18 2014 09:02 GMT
#10603
I'm starting to mess around with some machine learning stuff and I'm looking for resources to learn about business implementations of the various models. More specifically using polynomial linear regression to predict customer behavior in an e-commerce platform based on past activity.
Nesserev
Profile Blog Joined January 2011
Belgium2760 Posts
October 18 2014 11:04 GMT
#10604
--- Nuked ---
Manit0u
Profile Blog Joined August 2004
Poland17743 Posts
Last Edited: 2014-10-18 11:19:50
October 18 2014 11:17 GMT
#10605
On October 18 2014 12:09 Birdie wrote:
Homework question for Haskell. I'm trying to take a list and return a new list of every value which is not the same as the next value, e.g. notEqual [1,1,2,3,4,4,5,6] returns [1,2,3,4,5,6]. The trick is I have to do it only using list comprehension and inbuilt library functions. I can do it using recursion easily enough but I guess I don't understand list comprehension well enough to know how to do it.


Can't you just use the filter function? You could also do it recursively by checking head[list] against head[tail[list]] and then simply doing it recursively on tail[list]. I'm no good with Haskell though. Lisp is there to work with lists

Edit: beat me to it.
Time is precious. Waste it wisely.
MinoMoto
Profile Joined June 2011
Latvia107 Posts
October 18 2014 12:02 GMT
#10606
Guys i need help again
I need to create program using "do...while" in C#
1 program is asking you to enter a number(how much times it will do match)
2 program is asking you to enter a number, what will sum with previously entered sum.
[image loading]
JD.
Profile Joined September 2014
Australia250 Posts
October 18 2014 13:10 GMT
#10607
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.
Shield
Profile Blog Joined August 2009
Bulgaria4824 Posts
Last Edited: 2014-10-18 14:02:34
October 18 2014 13:46 GMT
#10608
On October 18 2014 21:02 MinoMoto wrote:
Guys i need help again
I need to create program using "do...while" in C#
1 program is asking you to enter a number(how much times it will do match)
2 program is asking you to enter a number, what will sum with previously entered sum.
[image loading]


Pseudo code.


int iteration = 0;
int maxIterations;
int sum = 0;
int inputValue;

maxIterations := <take value>

do
inputValue := <take value>
Print Sum[iteration]=sum+inputValue
sum += inputValue
++iteration
while iteration < maxIterations

Print Sum[iteration]=sum


Bonus: check if maxIterations' value is negative.

It's very easy to do it on your own, and part of that assignment is to teach you C# not math. You may also use arrays instead but I don't find it nice with a do-while loop when you depend on a previous iteration..
goody153
Profile Blog Joined April 2013
44272 Posts
October 18 2014 15:47 GMT
#10609
Hello Sir's,

Me and my friends are planning to put some kind of website that has a drawing app inbound. And i am planning to code a drawing application for the website.

I did some googling and there are i found the HTML canvass + Javascript is an easy way to code such tool.

However i am not sure if this is enough for the long run since we may want to build a more powerful and flexible drawing app than our current plans.

Is there any language, library or framework or something that i should know that is for this certain task drawing webapp and should work better than the html5 + javascript ?

Thanks ..

my current knowledge for web development are html, css, js , php and mysql. I'm also not an expert of those.
this is a quote
Nesserev
Profile Blog Joined January 2011
Belgium2760 Posts
Last Edited: 2014-10-18 15:53:28
October 18 2014 15:51 GMT
#10610
--- Nuked ---
Shield
Profile Blog Joined August 2009
Bulgaria4824 Posts
Last Edited: 2014-10-18 16:06:30
October 18 2014 16:05 GMT
#10611
On October 19 2014 00:51 Nesserev wrote:
Show nested quote +
On October 18 2014 22:46 darkness wrote:
On October 18 2014 21:02 MinoMoto wrote:
Guys i need help again
I need to create program using "do...while" in C#
1 program is asking you to enter a number(how much times it will do match)
2 program is asking you to enter a number, what will sum with previously entered sum.
[image loading]


Pseudo code.


int iteration = 0;
int maxIterations;
int sum = 0;
int inputValue;

maxIterations := <take value>

do
inputValue := <take value>
Print Sum[iteration]=sum+inputValue
sum += inputValue
++iteration
while iteration < maxIterations

Print Sum[iteration]=sum


+ Show Spoiler +
Bonus: check if maxIterations' value is negative.

It's very easy to do it on your own, and part of that assignment is to teach you C# not math. You may also use arrays instead but I don't find it nice with a do-while loop when you depend on a previous iteration..


Well, only problem with using a do-while loop in this case is that you only check for the amount of iterations after asking for the first value. So, when the user wants zero iterations, he/she still has to give input; it won't work as intended, it's semantically incorrect.


That's correct and one of the reasons I never use do-while loops. Do-while seems like an incorrect approach for this assignment. Otherwise, you have to pollute your code with 'if (maxIterations > 0)' or do that when you take user's input just before do-while loop. I understand there are cases when do-while lines up with a task nicely but I don't think I've encountered many such scenarios.
Birdie
Profile Blog Joined August 2007
New Zealand4438 Posts
October 18 2014 19:59 GMT
#10612
On October 18 2014 20:04 Nesserev wrote:
Show nested quote +
On October 18 2014 12:09 Birdie wrote:
Homework question for Haskell. I'm trying to take a list and return a new list of every value which is not the same as the next value, e.g. notEqual [1,1,2,3,4,4,5,6] returns [1,2,3,4,5,6]. The trick is I have to do it only using list comprehension and inbuilt library functions. I can do it using recursion easily enough but I guess I don't understand list comprehension well enough to know how to do it.



notEqual :: Eq a => [ a ] -> [ a ]
notEqual [] = []
notEqual (x:xs) | xs == [] = [ x ]
| x /= next = [ x ] ++ notEqual(xs)
| x == next = notEqual(xs)
where
{ next = head(xs)
}

- Use the (x:xs) notation to split head and tail (just like prolog).
- There's a wide range of list functions that are really nice, like head(), tail(), etc.
- '++' operator is used for appending lists

The first case is to handle empty lists, the second case has three more subcases:
- deal with last number (when tail is an empty list)
- when head != next number
- when head == next number

I'm trying to do it without recursion, only using list comprehension and built in functions. I've already done it using recursion.
Red classic | A butterfly dreamed he was Zhuangzi | 4.5k, heading to 5k as support!
Liebig
Profile Joined August 2010
France738 Posts
October 18 2014 20:13 GMT
#10613
On October 19 2014 04:59 Birdie wrote:
Show nested quote +
On October 18 2014 20:04 Nesserev wrote:
On October 18 2014 12:09 Birdie wrote:
Homework question for Haskell. I'm trying to take a list and return a new list of every value which is not the same as the next value, e.g. notEqual [1,1,2,3,4,4,5,6] returns [1,2,3,4,5,6]. The trick is I have to do it only using list comprehension and inbuilt library functions. I can do it using recursion easily enough but I guess I don't understand list comprehension well enough to know how to do it.



notEqual :: Eq a => [ a ] -> [ a ]
notEqual [] = []
notEqual (x:xs) | xs == [] = [ x ]
| x /= next = [ x ] ++ notEqual(xs)
| x == next = notEqual(xs)
where
{ next = head(xs)
}

- Use the (x:xs) notation to split head and tail (just like prolog).
- There's a wide range of list functions that are really nice, like head(), tail(), etc.
- '++' operator is used for appending lists

The first case is to handle empty lists, the second case has three more subcases:
- deal with last number (when tail is an empty list)
- when head != next number
- when head == next number

I'm trying to do it without recursion, only using list comprehension and built in functions. I've already done it using recursion.

notEqual l = concat $ map head $ group l

?
Birdie
Profile Blog Joined August 2007
New Zealand4438 Posts
October 18 2014 20:26 GMT
#10614
On October 19 2014 05:13 Liebig wrote:
Show nested quote +
On October 19 2014 04:59 Birdie wrote:
On October 18 2014 20:04 Nesserev wrote:
On October 18 2014 12:09 Birdie wrote:
Homework question for Haskell. I'm trying to take a list and return a new list of every value which is not the same as the next value, e.g. notEqual [1,1,2,3,4,4,5,6] returns [1,2,3,4,5,6]. The trick is I have to do it only using list comprehension and inbuilt library functions. I can do it using recursion easily enough but I guess I don't understand list comprehension well enough to know how to do it.



notEqual :: Eq a => [ a ] -> [ a ]
notEqual [] = []
notEqual (x:xs) | xs == [] = [ x ]
| x /= next = [ x ] ++ notEqual(xs)
| x == next = notEqual(xs)
where
{ next = head(xs)
}

- Use the (x:xs) notation to split head and tail (just like prolog).
- There's a wide range of list functions that are really nice, like head(), tail(), etc.
- '++' operator is used for appending lists

The first case is to handle empty lists, the second case has three more subcases:
- deal with last number (when tail is an empty list)
- when head != next number
- when head == next number

I'm trying to do it without recursion, only using list comprehension and built in functions. I've already done it using recursion.

notEqual l = concat $ map head $ group l

?

I could be wrong but does that actually remove anything from the list?
Red classic | A butterfly dreamed he was Zhuangzi | 4.5k, heading to 5k as support!
Liebig
Profile Joined August 2010
France738 Posts
Last Edited: 2014-10-18 20:52:06
October 18 2014 20:44 GMT
#10615
On October 19 2014 05:26 Birdie wrote:
Show nested quote +
On October 19 2014 05:13 Liebig wrote:
On October 19 2014 04:59 Birdie wrote:
On October 18 2014 20:04 Nesserev wrote:
On October 18 2014 12:09 Birdie wrote:
Homework question for Haskell. I'm trying to take a list and return a new list of every value which is not the same as the next value, e.g. notEqual [1,1,2,3,4,4,5,6] returns [1,2,3,4,5,6]. The trick is I have to do it only using list comprehension and inbuilt library functions. I can do it using recursion easily enough but I guess I don't understand list comprehension well enough to know how to do it.



notEqual :: Eq a => [ a ] -> [ a ]
notEqual [] = []
notEqual (x:xs) | xs == [] = [ x ]
| x /= next = [ x ] ++ notEqual(xs)
| x == next = notEqual(xs)
where
{ next = head(xs)
}

- Use the (x:xs) notation to split head and tail (just like prolog).
- There's a wide range of list functions that are really nice, like head(), tail(), etc.
- '++' operator is used for appending lists

The first case is to handle empty lists, the second case has three more subcases:
- deal with last number (when tail is an empty list)
- when head != next number
- when head == next number

I'm trying to do it without recursion, only using list comprehension and built in functions. I've already done it using recursion.

notEqual l = concat $ map head $ group l

?

I could be wrong but does that actually remove anything from the list?

Made a mistake.

notEqual = map head . group

λ map head $ group [1,1,2,3,4,4,5,6]
[1,2,3,4,5,6]

Basically, it just groups consecutive things that are equal, then you just take the first element of each new list and it makes the new list.
Nesserev
Profile Blog Joined January 2011
Belgium2760 Posts
Last Edited: 2014-10-18 21:04:56
October 18 2014 20:56 GMT
#10616
--- Nuked ---
delHospital
Profile Blog Joined December 2010
Poland261 Posts
October 18 2014 23:05 GMT
#10617
If you really want to use list comprehensions, you could do something like

notEqual [] = []
notEqual (x:xs) = x : [cur | (prev, cur) <- zip (x:xs) xs, prev /= cur]

This walks through two copies of the same list, but one of them (xs) is always one step ahead of the other (x:xs). It yields an element every time the heads of these lists differ.
Birdie
Profile Blog Joined August 2007
New Zealand4438 Posts
Last Edited: 2014-10-18 23:44:13
October 18 2014 23:43 GMT
#10618
On October 19 2014 05:44 Liebig wrote:
Show nested quote +
On October 19 2014 05:26 Birdie wrote:
On October 19 2014 05:13 Liebig wrote:
On October 19 2014 04:59 Birdie wrote:
On October 18 2014 20:04 Nesserev wrote:
On October 18 2014 12:09 Birdie wrote:
Homework question for Haskell. I'm trying to take a list and return a new list of every value which is not the same as the next value, e.g. notEqual [1,1,2,3,4,4,5,6] returns [1,2,3,4,5,6]. The trick is I have to do it only using list comprehension and inbuilt library functions. I can do it using recursion easily enough but I guess I don't understand list comprehension well enough to know how to do it.



notEqual :: Eq a => [ a ] -> [ a ]
notEqual [] = []
notEqual (x:xs) | xs == [] = [ x ]
| x /= next = [ x ] ++ notEqual(xs)
| x == next = notEqual(xs)
where
{ next = head(xs)
}

- Use the (x:xs) notation to split head and tail (just like prolog).
- There's a wide range of list functions that are really nice, like head(), tail(), etc.
- '++' operator is used for appending lists

The first case is to handle empty lists, the second case has three more subcases:
- deal with last number (when tail is an empty list)
- when head != next number
- when head == next number

I'm trying to do it without recursion, only using list comprehension and built in functions. I've already done it using recursion.

notEqual l = concat $ map head $ group l

?

I could be wrong but does that actually remove anything from the list?

Made a mistake.

notEqual = map head . group

λ map head $ group [1,1,2,3,4,4,5,6]
[1,2,3,4,5,6]

Basically, it just groups consecutive things that are equal, then you just take the first element of each new list and it makes the new list.

I didn't know how group worked, thanks for introducing me to that function! map head (group list) worked for me.

On October 19 2014 08:05 delHospital wrote:
If you really want to use list comprehensions, you could do something like

notEqual [] = []
notEqual (x:xs) = x : [cur | (prev, cur) <- zip (x:xs) xs, prev /= cur]

This walks through two copies of the same list, but one of them (xs) is always one step ahead of the other (x:xs). It yields an element every time the heads of these lists differ.

I was trying something of this style yesterday but didn't know about zip, thanks also to you <3
Red classic | A butterfly dreamed he was Zhuangzi | 4.5k, heading to 5k as support!
Hug-A-Hydralisk
Profile Joined February 2012
United States174 Posts
Last Edited: 2014-10-20 01:32:37
October 19 2014 06:01 GMT
#10619
Get your PC gaming fix here: http://www.youtube.com/cinicraft YOU KNOW YOU WANT TO!!
CatNzHat
Profile Blog Joined February 2011
United States1599 Posts
October 19 2014 07:59 GMT
#10620
On October 19 2014 00:47 goody153 wrote:
Hello Sir's,

Me and my friends are planning to put some kind of website that has a drawing app inbound. And i am planning to code a drawing application for the website.

I did some googling and there are i found the HTML canvass + Javascript is an easy way to code such tool.

However i am not sure if this is enough for the long run since we may want to build a more powerful and flexible drawing app than our current plans.

Is there any language, library or framework or something that i should know that is for this certain task drawing webapp and should work better than the html5 + javascript ?

Thanks ..

my current knowledge for web development are html, css, js , php and mysql. I'm also not an expert of those.

You will not be limited by javascript, it's only option as far as client-side in browser applications are concerned, and there are various photoshop like web-apps that have very complicated painting engines that all run in the browser (js, canvas)
Prev 1 529 530 531 532 533 1032 Next
Please log in or register to reply.
Live Events Refresh
PiGosaur Cup
00:00
#80 (TLMC 22 Edition)
PiGStarcraft550
CranKy Ducklings84
EnkiAlexander 68
Liquipedia
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
PiGStarcraft550
RuFF_SC2 155
SpeCial 30
CosmosSc2 25
StarCraft: Brood War
GuemChi 6391
Artosis 657
910 53
NaDa 35
Noble 27
League of Legends
JimRising 699
Super Smash Bros
Mew2King96
Other Games
summit1g8057
tarik_tv5989
C9.Mang0573
fl0m441
monkeys_forever396
ViBE37
Organizations
Other Games
gamesdonequick942
BasetradeTV448
Dota 2
PGL Dota 2 - Main Stream41
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 15 non-featured ]
StarCraft 2
• Hupsaiya 69
• CranKy Ducklings SOOP16
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• RayReign 19
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
League of Legends
• Lourlo436
Other Games
• Scarra1113
Upcoming Events
GSL
6h 21m
Classic vs Cure
Maru vs Rogue
GSL
1d 6h
SHIN vs Zoun
ByuN vs herO
OSC
1d 7h
OSC
1d 9h
Replay Cast
1d 20h
Escore
2 days
The PondCast
2 days
WardiTV Invitational
2 days
Zoun vs Ryung
Lambo vs ShoWTimE
OSC
2 days
Replay Cast
2 days
[ Show More ]
CranKy Ducklings
3 days
RSL Revival
3 days
SHIN vs Bunny
ByuN vs Shameless
WardiTV Invitational
3 days
Krystianer vs TriGGeR
Cure vs Rogue
uThermal 2v2 Circuit
3 days
BSL
3 days
Replay Cast
3 days
Sparkling Tuna Cup
4 days
RSL Revival
4 days
Cure vs Zoun
Clem vs Lambo
WardiTV Invitational
4 days
BSL
4 days
GSL
5 days
Afreeca Starleague
5 days
Monday Night Weeklies
5 days
Afreeca Starleague
6 days
CranKy Ducklings
6 days
Liquipedia Results

Completed

Proleague 2026-05-05
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
Acropolis #4
YSL S3
SCTL 2026 Spring
RSL Revival: Season 5
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

Escore Tournament S2: W6
KK 2v2 League Season 1
BSL 22 Non-Korean Championship
Escore Tournament S2: W7
Escore Tournament S2: W8
CSLAN 4
Kung Fu Cup 2026 Grand Finals
HSC XXIX
uThermal 2v2 2026 Main Event
Maestros of the Game 2
2026 GSL S2
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026
IEM Atlanta 2026
Asian Champions League 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.