From b7f5e4f2b295062f1a1bd64dd118577ca0a58214 Mon Sep 17 00:00:00 2001 From: spiderr Date: Wed, 12 Aug 2020 12:22:48 -0400 Subject: move all captcha code to users/ --- freecap/.ht_freecap_font1.gdf | Bin 44216 -> 0 bytes freecap/.ht_freecap_font2.gdf | Bin 44216 -> 0 bytes freecap/.ht_freecap_font3.gdf | Bin 44216 -> 0 bytes freecap/.ht_freecap_font4.gdf | Bin 44216 -> 0 bytes freecap/.ht_freecap_font5.gdf | Bin 44216 -> 0 bytes freecap/.ht_freecap_im1.jpg | Bin 84564 -> 0 bytes freecap/.ht_freecap_im2.jpg | Bin 111193 -> 0 bytes freecap/.ht_freecap_im3.jpg | Bin 69645 -> 0 bytes freecap/.ht_freecap_im4.jpg | Bin 46182 -> 0 bytes freecap/.ht_freecap_im5.jpg | Bin 62563 -> 0 bytes freecap/.ht_freecap_words | 6698 ----------------------------------------- freecap/COPYING.txt | 340 --- freecap/freecap.php | 827 ----- freecap/freecap_wrap.php | 125 - 14 files changed, 7990 deletions(-) delete mode 100644 freecap/.ht_freecap_font1.gdf delete mode 100644 freecap/.ht_freecap_font2.gdf delete mode 100644 freecap/.ht_freecap_font3.gdf delete mode 100644 freecap/.ht_freecap_font4.gdf delete mode 100644 freecap/.ht_freecap_font5.gdf delete mode 100644 freecap/.ht_freecap_im1.jpg delete mode 100644 freecap/.ht_freecap_im2.jpg delete mode 100644 freecap/.ht_freecap_im3.jpg delete mode 100644 freecap/.ht_freecap_im4.jpg delete mode 100644 freecap/.ht_freecap_im5.jpg delete mode 100644 freecap/.ht_freecap_words delete mode 100644 freecap/COPYING.txt delete mode 100644 freecap/freecap.php delete mode 100644 freecap/freecap_wrap.php diff --git a/freecap/.ht_freecap_font1.gdf b/freecap/.ht_freecap_font1.gdf deleted file mode 100644 index 6f44158..0000000 Binary files a/freecap/.ht_freecap_font1.gdf and /dev/null differ diff --git a/freecap/.ht_freecap_font2.gdf b/freecap/.ht_freecap_font2.gdf deleted file mode 100644 index 0f549c2..0000000 Binary files a/freecap/.ht_freecap_font2.gdf and /dev/null differ diff --git a/freecap/.ht_freecap_font3.gdf b/freecap/.ht_freecap_font3.gdf deleted file mode 100644 index fbea123..0000000 Binary files a/freecap/.ht_freecap_font3.gdf and /dev/null differ diff --git a/freecap/.ht_freecap_font4.gdf b/freecap/.ht_freecap_font4.gdf deleted file mode 100644 index f9f4b6a..0000000 Binary files a/freecap/.ht_freecap_font4.gdf and /dev/null differ diff --git a/freecap/.ht_freecap_font5.gdf b/freecap/.ht_freecap_font5.gdf deleted file mode 100644 index fe123f8..0000000 Binary files a/freecap/.ht_freecap_font5.gdf and /dev/null differ diff --git a/freecap/.ht_freecap_im1.jpg b/freecap/.ht_freecap_im1.jpg deleted file mode 100644 index 823678e..0000000 Binary files a/freecap/.ht_freecap_im1.jpg and /dev/null differ diff --git a/freecap/.ht_freecap_im2.jpg b/freecap/.ht_freecap_im2.jpg deleted file mode 100644 index e9ad645..0000000 Binary files a/freecap/.ht_freecap_im2.jpg and /dev/null differ diff --git a/freecap/.ht_freecap_im3.jpg b/freecap/.ht_freecap_im3.jpg deleted file mode 100644 index 7e3b65d..0000000 Binary files a/freecap/.ht_freecap_im3.jpg and /dev/null differ diff --git a/freecap/.ht_freecap_im4.jpg b/freecap/.ht_freecap_im4.jpg deleted file mode 100644 index f96821c..0000000 Binary files a/freecap/.ht_freecap_im4.jpg and /dev/null differ diff --git a/freecap/.ht_freecap_im5.jpg b/freecap/.ht_freecap_im5.jpg deleted file mode 100644 index a2800ed..0000000 Binary files a/freecap/.ht_freecap_im5.jpg and /dev/null differ diff --git a/freecap/.ht_freecap_words b/freecap/.ht_freecap_words deleted file mode 100644 index b1e1312..0000000 --- a/freecap/.ht_freecap_words +++ /dev/null @@ -1,6698 +0,0 @@ -aback -abacus -abaft -abase -abaser -abate -abated -abater -abbess -abbey -abbot -abduct -abeam -abhor -abider -abject -abjure -ablate -ablaze -abler -abloom -aboard -abode -abound -about -above -abroad -abrupt -abseil -absent -absurd -abused -abuses -abuzz -abyss -acacia -accede -accent -accept -access -accost -accrue -accuse -acetic -ached -achene -aches -aching -acorn -acquit -acrid -across -acting -active -actual -acuity -acumen -acute -adage -adagio -adapt -addend -addle -adduct -adept -adhere -adieu -adjoin -adjust -adman -admen -admit -adobe -adopts -adore -adorn -adrift -adroit -adult -advent -advert -advice -aegis -aerial -aether -affair -affine -affix -afford -affray -afield -afire -aflame -afloat -afoot -afore -afoul -afraid -afresh -after -afters -again -agape -agate -agave -ageing -ageism -ageist -agency -agenda -agent -agents -aghast -agile -agleam -aglow -agony -agouti -agreer -ahead -aided -airing -airway -aisle -aitch -alack -albeit -albino -album -alcove -aleph -algae -algal -alias -alibi -alight -align -aligns -alike -alive -alkali -alkyd -alkyl -allay -allele -alley -allier -allies -allot -allots -allow -allows -alloy -almond -almost -alnico -aloft -aloha -alone -along -aloof -aloud -alpaca -alpha -altar -alter -alumna -alumni -always -amass -amaze -amber -ambit -amble -ambles -ambush -amends -amener -amerce -amide -amidst -amigo -amine -amino -amiss -amity -amnion -amoeba -among -amoral -amount -amour -ampere -ample -amulet -amused -anders -angle -angora -angry -angst -animal -animus -anion -anise -ankle -anklet -annal -anneal -annex -annexe -annoy -annual -annul -annuli -annum -anode -anoint -anomic -anomie -anorak -anther -antic -antler -antral -anvil -anyhow -anyone -anyway -aorist -aorta -apace -apart -apathy -aphid -apical -apiece -apish -aplomb -apogee -apolar -appeal -appear -append -apple -applet -approx -apron -apter -aptest -arable -arbour -arcade -arcana -arcane -ardent -ardour -areal -arena -areola -argent -argon -argosy -argot -argue -argued -argues -aright -arise -arisen -ariser -armada -armed -armer -armful -arming -armlet -armour -armpit -aroma -arose -around -arrack -arrant -arras -array -arrive -arrow -arroyo -arsine -arson -artful -artist -ascend -ascent -ashen -asher -ashlar -ashore -ashram -aside -asked -askew -aslant -asleep -aspect -aspen -aspic -assay -assen -assent -asses -assess -asset -assign -assist -assize -assort -assume -aster -astern -asthma -astir -astral -astray -astute -asylum -ataxia -ataxic -atilt -atlas -atoll -atomic -atonal -atria -atrial -atrium -attach -attain -attar -attend -attic -attire -attune -auburn -audio -audit -auger -aught -augite -augur -augury -august -auntie -aunty -aural -aurora -auteur -author -autumn -auxin -avant -avast -avatar -avaunt -avenge -avenue -averse -avert -avian -aviary -avouch -avowal -avowed -avower -avows -await -awake -award -aware -awash -aweigh -awful -awhile -awing -awning -awoke -awoken -axial -azalea -azure -babble -babel -baboon -backer -backup -bacon -baddie -badge -badger -badman -badmen -bagel -bagful -bagged -baggy -bailee -bailer -bailey -bails -bairn -baiter -baize -baked -bakery -baking -balboa -balder -baleen -ballet -balls -ballsy -balmy -balsa -balun -bamboo -banal -banana -banded -bander -bandit -bands -bandy -bangle -banish -banjo -banner -banns -bantam -banter -banyan -banzai -baobab -barbel -barber -barfly -bargy -barium -barker -barley -baron -barony -barque -barre -barred -barrel -barren -barrio -barrow -barter -baryon -basal -basalt -based -baser -bases -basher -basic -basil -basing -basis -basset -basso -baste -batch -bated -bater -bathe -bathos -batik -bating -batman -batmen -baton -battle -batty -bauble -baulky -bawdy -bawler -bayou -bazaar -beach -beadle -beady -beagle -beanie -beano -bears -beast -beaten -beaut -beaux -bebop -becalm -became -beckon -become -bedaub -bedbug -bedeck -bedim -bedlam -bedpan -bedsit -beech -beefy -beery -beetle -beeves -befall -befell -befit -befog -before -befoul -began -beggar -begin -begone -begot -begum -begun -behalf -behead -beheld -behest -behind -behold -behove -beige -being -belate -belay -belch -belfry -belie -belief -belier -belle -bellow -belly -belong -below -belted -beluga -beman -bemire -bemoan -bemuse -bench -bends -benign -benumb -berate -bereft -beret -berry -berth -beryl -beseem -beset -beside -besot -bester -bestir -bestow -betake -betcha -betel -bethel -betide -betook -betray -bevel -bewail -beware -beyond -bezel -biased -bicarb -biceps -bicker -bidden -bidder -biddy -bider -bidet -bigamy -biggie -bight -bigot -bigwig -bijou -bijoux -bikini -bilge -billow -billy -bimbo -binary -binder -bindle -binge -bingen -bingo -bionic -biopic -biopsy -biota -biotin -biped -birch -birdie -birth -births -bisect -bishop -bison -bisque -bistro -bitchy -biting -bitser -bitten -bitty -bizzes -black -blade -blame -blanc -blanch -bland -blank -blare -blast -blazon -bleach -bleak -bleary -bleat -bleed -bleep -blench -blend -blight -blimey -blimp -blink -blinks -bliss -blithe -blitz -bloat -block -bloke -blond -blonde -bloody -bloom -bloop -blotch -blotto -blouse -blown -blowy -blowzy -bluer -bluest -bluesy -bluff -bluing -bluish -blunt -blurb -blurry -blurt -board -boards -boasts -bobbin -bobble -bobby -bobcat -boccie -bodega -bodice -bodied -boding -bodkin -boffin -boggle -boggy -bogus -boiled -boiler -bolero -bolted -bolter -bolts -bolus -bonbon -bongo -bonito -bonnet -bonnie -bonny -bonsai -bonus -bonzes -booby -boodle -boogie -boohoo -booked -bookie -books -boomer -boost -bootee -booth -booty -booze -boozy -borate -borax -boring -borne -boron -borzoi -bosomy -boson -bosser -bossy -bosun -botch -botfly -bother -bothy -bottle -bough -bought -bouncy -bovine -bowed -bowel -bower -bowing -bowser -bowwow -bowyer -boxcar -boxful -boxing -boyer -boyish -bracer -bract -braid -brainy -braise -brake -branch -brand -brands -brandy -brash -brass -brassy -bratty -brave -bravo -brawl -brawn -brawny -brayer -braze -brazen -breach -bread -bream -breech -breed -breeze -breezy -breve -brevet -brewer -briar -brick -bridal -bride -bridge -bridle -brief -brier -bright -brine -briner -bring -brink -briny -brisk -broach -broad -brogue -broil -broke -broken -broker -bronc -bronco -bronze -brooch -broody -brook -broom -brose -broth -brown -brows -browse -bruin -bruise -bruit -brunch -brunet -brunt -brush -bruter -bubble -bubbly -buboes -bucker -buckle -buddy -budge -budgie -buffet -bugger -buggy -bugle -build -builds -bulgy -bulker -bulky -bullet -bully -bummed -bumper -bumpy -bunch -bunchy -bundle -bungee -bunker -bunkum -bunny -burble -burbs -burden -bureau -burgh -burgle -burial -buried -burier -burlap -burler -burly -burned -burnt -burrow -bursa -bursae -bursar -burst -bursts -bushel -busher -bushy -buskin -busman -busmen -busted -butane -butene -butler -butter -butyl -buying -buyout -byers -bygone -byline -byname -bypass -bypath -byplay -byroad -byway -byword -cabal -cabala -cabana -caber -cable -cacao -cache -cacher -cackle -cacti -cactus -caddie -caddy -cadent -cadet -cadge -cadre -caeca -caecal -caecum -caftan -cagey -cagier -cahoot -cairn -calico -caliph -calla -callee -callow -calls -calve -calves -calyx -camel -cameo -camion -camped -camps -campus -campy -canal -canard -canary -cancan -cancel -candid -candle -candy -canine -caning -canker -cannon -cannot -canny -canopy -canst -canted -canter -canto -canton -cantor -cants -canvas -canyon -caper -capita -capon -capped -captor -carafe -carat -carboy -cared -careen -career -cares -caress -caret -cargo -caries -caring -carnal -carny -carob -carol -carom -carpal -carpel -carpi -carpus -carrel -carrot -carte -cartel -carven -casaba -casbah -cased -casein -cashew -casing -casino -cassia -caste -castle -castor -casual -catchy -cater -catgut -cation -catkin -catnap -catnip -cattle -catty -caucus -caudal -caught -caulk -causal -caused -caveat -caver -cavern -caves -cavil -caving -cavity -cavort -cayman -cease -cedar -celery -cellar -cement -censer -cereal -cerise -cerium -cermet -cervix -chador -chafe -chafer -chaff -chain -chaise -chalet -chalky -champ -chancy -chant -chaos -chapel -chard -charge -chary -chase -chasm -chaste -chatty -cheap -cheat -check -checks -cheek -cheeky -cheep -cheer -cheery -cheese -cheesy -cheque -cherry -chert -cherub -chest -chesty -chewy -chicer -chichi -chick -chicle -chide -child -chilli -chilly -chime -chimp -china -chine -chink -chino -chintz -chippy -chiral -chirp -chirpy -chisel -chitin -chive -chivvy -chock -choice -choir -chokes -choler -chomp -choose -choosy -choppy -choral -chord -chorea -chorus -chose -chosen -chrism -chroma -chrome -chubby -chuck -chuff -chukka -chummy -chump -chunky -churl -churn -chute -chyme -cicada -cider -cigar -cilia -cilium -cinch -cinema -circa -circle -circus -cirque -cirri -cirrus -cissy -citron -citrus -civet -civic -civics -civil -clack -claim -clammy -clamp -clang -claque -clash -clasp -classy -clause -clave -claver -clawer -clean -cleans -clear -cleat -cleave -cleft -clench -cleric -clerk -clever -clevis -click -client -cliff -climax -climb -clime -cling -clingy -clinic -clink -clique -cloaca -cloak -cloche -clock -clomp -clonal -clone -clonk -close -closed -closer -closes -cloth -clothe -clouds -cloudy -clout -clove -cloven -clown -cluck -clump -clumpy -clumsy -clung -clunky -clutch -coaler -coarse -coast -coated -coater -coats -cobalt -cobble -coble -cobra -cobweb -cocci -coccus -coccyx -cockle -cocky -cocoa -cocoon -coddle -codec -coded -coder -codex -codger -coding -codon -coeval -coffee -cogent -cognac -cohere -cohort -cokey -coleus -colic -collar -colony -colter -comae -combed -combo -comedy -comely -comer -comes -comet -cometh -comfit -comfy -comic -coming -comity -commie -commit -common -comply -conch -conchs -concur -condo -condom -condor -confab -conga -conger -conic -conics -conman -conmen -conner -consul -contd -convex -convoy -cooked -cooker -cookie -cooled -coolie -cooper -cootie -copay -coper -copied -copies -coping -copper -copra -copse -copter -coral -corbel -corder -cords -corgi -coring -corked -corks -cornea -corner -cornet -corny -corona -corps -corpse -corpus -corral -corset -cortex -corves -cosign -cosine -cosmic -cosmos -costly -cotton -couch -cougar -cough -could -counts -county -couple -coupon -course -court -cousin -covary -coven -covers -covert -covet -covey -coward -cowboy -cowpox -cowrie -coyed -coyote -coypu -cozen -crabby -cradle -crafty -craggy -cramp -crane -cranky -cranny -crape -crass -crate -crater -cravat -crave -craver -crawl -crawly -craze -crazy -creak -creaky -creamy -crease -create -credo -creed -creeds -creek -creel -creepy -creme -creole -crepe -crept -cress -crest -cretin -crewel -crick -cries -crime -crimp -cringe -crises -crisis -crispy -criss -croak -croaky -crock -crocus -croft -crone -crony -crook -croon -crops -crouch -croup -croupy -crowds -crown -cruddy -crude -cruel -cruet -cruise -crumb -crumby -crummy -crump -crunch -cruse -crusty -crutch -crypt -cuber -cubic -cubism -cubit -cuboid -cuckoo -cuddly -cudgel -cueing -culler -culpa -cumber -cumin -cumuli -cupful -cupid -cupola -cupric -curacy -curare -curate -curdle -curfew -curia -curiae -curial -curie -curio -curium -curled -curlew -curls -curly -curry -curse -cursed -cursor -curtsy -curve -curved -curvy -cushy -cussed -cusser -cusses -cutesy -cutler -cutlet -cuttle -cutup -cyborg -cycad -cycled -cycler -cycles -cyder -cygnet -cynic -cypher -dabber -dabble -dacha -dactyl -daddy -daemon -daffy -dahlia -daily -dainty -daisy -daleth -dally -damask -dammit -damner -dampen -damsel -damson -dance -dandle -dandy -danger -dapper -dapple -daring -darken -darkly -dative -datum -davit -dawdle -daybed -deaden -deadly -deafen -deals -dealt -dearth -deary -debar -debark -debase -debate -debit -debris -debtor -debug -decade -decaf -decal -decay -deceit -decent -decile -decoy -decree -deduct -deeds -deejay -deepen -deface -defame -defeat -defend -defer -defile -define -defog -deform -defuse -degas -degree -deign -deist -deity -delay -delft -delta -deluge -deluxe -delve -demean -demise -demit -demob -demon -demote -demur -demure -dengue -denial -denim -dense -denser -dental -dented -dents -denude -depart -depict -deploy -depot -depth -deputy -derail -derby -derive -dermal -dermis -desalt -descry -desert -desist -despot -detain -deter -detest -detox -detune -devise -devote -devour -devout -dewar -dexes -dexter -dhoti -dials -diaper -diatom -dibble -dicer -dices -dicey -dicier -dicing -dickey -dicta -dictum -diddle -didst -diesel -differ -digit -digram -diker -diktat -dilate -dilute -dimity -dimmed -dimple -dimply -dimwit -dinar -dinghy -dingle -dingo -dingy -dinky -diode -dioxin -dipole -dippy -dirge -dirty -disant -disarm -disbar -disco -discus -dismal -dismay -dispel -distal -distil -disuse -ditch -dither -ditto -ditty -divan -dived -divers -divert -divest -divot -divvy -dobbin -docile -dodder -dodge -dodgem -dodgy -dogged -doggo -doggy -dogleg -dogma -doily -doing -doings -doled -doles -doling -dollar -dolly -dolmen -dolour -domain -domes -domino -donate -dongle -donkey -donor -doodle -dooper -dopant -dopey -dopier -dorky -dorsal -dosage -dotage -dotard -dotty -double -doubts -douche -dough -doughy -douse -douser -dowdy -dowel -downy -dowry -dowse -doyen -dozen -dozer -draggy -dragon -drain -drake -drama -drank -drawee -draws -dreamt -dreamy -drear -dreary -dredge -drench -dressy -drill -drippy -drive -drivel -driven -drives -drogue -droll -droner -drool -droop -droopy -drops -dropsy -dross -drove -drown -drowse -drowsy -drudge -druid -drunk -drupe -dryad -dryer -dryish -dryly -dubbed -dubbin -ducal -ducat -duchy -ducker -ducky -ducted -ducts -duenna -duffel -dugout -dulcet -dumdum -dummy -dumpy -dunce -dunker -dunno -dupion -duple -duplex -duress -during -durst -durum -dusky -dusty -duvet -duxes -dwarf -dwell -dwells -dwelt -dybbuk -dyeing -dying -dynamo -eagle -eaglet -earful -early -earned -earthy -earwax -earwig -eased -easel -easer -eases -easily -easing -eater -eatery -eating -ebony -echoes -echoic -eczema -edging -edible -edict -edited -editor -edits -eerie -eerily -efface -effete -effigy -efflux -eggcup -egger -eggnog -egoism -egress -egret -eider -eight -eighty -either -eject -ejecta -eland -elans -elapse -elate -elated -elater -elbow -elder -eldest -elects -elegy -eleven -elfin -elfish -elicit -elide -elite -elixir -elodea -elope -eloper -eluate -elute -elven -elver -elves -elvish -email -embalm -embank -embark -embed -ember -emblem -embody -emboss -embryo -emcee -emend -emerge -emery -emetic -emote -employ -emptor -empty -enable -enact -enacts -enamel -encamp -encase -encode -encore -encyst -ending -endive -endow -endue -enema -enemy -enfold -engage -engine -engram -engulf -enigma -enjoin -enlist -enmesh -enmity -ennui -enough -enrage -enrich -enrol -ensign -ensue -ensure -entail -enters -entire -entity -entomb -entrap -entry -envied -envoy -enzyme -eolith -epoch -epochs -epoxy -equal -equine -equip -equips -equity -equiv -erase -erbium -erect -ergot -ermine -erode -erotic -errand -errant -errata -erring -error -ersatz -eschew -escort -escrow -escudo -esprit -estate -esteem -etalon -ethane -ether -ethic -ethnic -ethos -ethyl -euchre -eunuch -eureka -evener -evenly -event -evict -evince -evoke -evolve -exact -exacts -excel -excise -exempt -exeunt -exhume -exile -exist -exodus -exotic -expect -expend -expert -expiry -expose -extant -extend -extent -extol -extort -extra -exude -exurb -eyeful -eyelet -eyelid -fable -fabled -fabler -fables -fabric -facer -facial -facile -facing -facto -factor -fading -faerie -faint -faire -fairly -fairy -fakir -falcon -fallen -fallow -falls -false -falter -family -famine -famish -famous -fanout -farad -farce -farer -farina -farrow -fascia -fasten -fatale -fatso -fatten -fatty -fatwa -fault -faulty -fauna -fealty -feast -fedora -feeble -feeds -feign -feint -feisty -feline -fellah -fellow -felon -felony -female -femme -femur -fence -fenced -fencer -fennel -feral -ferny -ferret -ferro -ferule -fervid -fesses -festal -fester -fetter -fettle -feudal -fiasco -fibre -fibrin -fibula -fiche -fichu -fickle -ficus -fiddle -fidget -fiend -fierce -fiery -fiesta -fifth -fifty -fight -filch -filial -filing -fills -filly -filmy -filthy -finale -finch -finely -finer -finery -finest -finger -finial -fining -finis -finish -finite -finny -fiord -fires -firing -firkin -firmer -firmly -first -firth -fiscal -fished -fisher -fishy -fitful -fitted -fitter -fiver -fixate -fixed -fixes -fixing -fixity -fizzer -fizzle -fizzy -fjord -flabby -flack -flagon -flail -flair -flake -flaker -flaky -flamed -flamen -flamer -flames -flange -flank -flanks -flaps -flashy -flask -flatus -flaxen -fleck -fledge -fleece -fleecy -fleer -fleet -fleshy -flews -flexes -flick -flier -fliest -flimsy -flinch -fling -flinty -flirt -float -flock -flood -floor -floozy -floppy -floral -floret -florid -florin -floss -flossy -flour -floury -flout -flowed -flown -fluent -fluffy -fluke -fluky -flume -flung -flunk -flunky -flurry -flush -flute -fluxes -flyby -flybys -flyer -flying -foamer -foamy -fogey -foggy -foible -foist -folder -foliar -folio -folks -folksy -folly -foment -fondue -foodie -forage -foray -forbid -force -forced -forcer -forego -forged -forges -forget -forgo -forgot -forker -format -formed -former -formic -forms -forte -forth -forty -forum -fought -fouls -found -founds -fount -fourth -fovea -foveae -foveal -fowler -foxed -foxes -foxing -foyer -fracas -frail -frame -framed -franc -frank -fraud -freak -freaky -freeze -freon -fresco -friar -friary -fridge -fried -fries -frieze -frigid -frill -frilly -fringe -frisky -frizz -frizzy -frock -froid -frolic -frond -front -frosts -frosty -froth -frothy -frowzy -froze -frozen -frugal -fruit -fruity -frump -frumpy -fryer -fuddle -fudge -fugal -fugue -fuhrer -fulfil -fuller -funds -fungal -fungi -fungus -funky -funnel -funny -furore -furrow -furry -furze -fused -fusee -fuses -fusing -fusion -fusser -fussy -fusty -futile -futon -future -fuzzy -gabble -gabby -gable -gabler -gadfly -gaffe -gaggle -gaiety -gaily -gained -gains -galaxy -galen -galena -galley -gallon -gallop -galoot -galore -galosh -gambit -gamble -gambol -gamest -gamete -gamin -gamine -gaming -gamma -gamut -gander -ganger -gannet -gantry -gaper -garage -garble -garde -garden -gargle -garish -garlic -garner -garnet -garret -gasbag -gasket -gasses -gassy -gateau -gauche -gaucho -gaudy -gauger -gaunt -gauss -gauze -gauzy -gavel -gawker -gawky -gazebo -gecko -geese -geezer -geisha -gelcap -gelid -genial -genii -genius -genome -genre -gentry -genus -geode -gerbil -gerund -getup -gewgaw -ghetto -ghost -ghoul -giant -gibber -gibbon -giber -giddy -gifted -giggly -gigolo -giller -gillie -gimlet -gimpy -ginkgo -gipsy -girdle -girlie -girth -given -giveth -giving -glade -gladly -gland -glans -glassy -glaze -glazed -gleam -glean -glide -glint -glitch -glitz -glitzy -global -globe -gloomy -glory -glossy -glower -glued -gluier -gluon -glutei -gluten -glycol -glyph -gnarl -gnash -gnawer -gneiss -gnome -gnomic -goalie -goatee -gobbet -gobble -goblet -goblin -godly -godson -goggle -going -goitre -golden -golly -gonad -gooder -goodly -goody -goofy -googly -gooier -goose -gopher -gorge -gorger -gorgon -goring -gorse -gospel -gotta -gotten -gouge -gourd -gouty -graded -grades -graft -grail -grain -grainy -gramme -grand -grange -granny -grant -grape -graph -grass -grassy -grates -gratis -grave -gravel -graven -gravid -gravy -grazer -grease -greasy -great -grebe -greedy -green -greet -greyer -grief -grill -grille -grilse -grime -grimy -grinds -gringo -gripe -grisly -grist -gritty -groan -groat -grocer -groggy -groin -groom -groove -groovy -gross -grotto -ground -group -groups -grouse -grout -grove -grovel -grows -grubby -gruff -grumpy -grunge -grungy -grunt -guano -guard -guava -guest -guffaw -guide -guider -guides -guild -guile -guilty -guinea -guise -gulden -gullet -gulley -gully -gummy -gunky -gunman -gunmen -gunny -guppy -gurgle -gushy -gusset -gusto -gusty -gutsy -gutta -gutter -guzzle -gypped -gypsum -gypsy -habeas -habits -hackle -hades -hadron -hadst -haggis -haggle -haiku -hairdo -hairy -hajjes -hajji -halal -haled -haler -hales -halide -haling -halite -hallo -hallow -haloes -halon -halter -halve -halves -hamlet -hammer -hammy -hamper -handed -handle -hands -hangar -hangs -hangup -hankie -hanky -hansom -happen -happy -harass -harden -hardy -harem -harken -harmed -harmer -harpy -harrow -harry -harsh -hasher -hassle -haste -hasten -hasty -hatred -hauled -hauler -hauls -haunch -haven -haver -havoc -hayer -haymow -hazard -hazel -hazing -hdqrs -heads -heady -healed -health -heard -hearer -hears -hearse -hearth -hearty -heave -heaven -heaves -heavy -heckle -hectic -hector -heeded -heehaw -hefty -hegira -heifer -heigh -height -helium -helix -hello -helmet -helot -helter -helve -hempen -hence -henge -henna -henry -herbal -hereat -hereby -herein -hereof -heresy -hereto -hermit -heroes -heroic -heroin -heron -herpes -hertz -hexane -hexer -heyday -hiatus -hicks -hidden -hidey -hiding -hieing -hight -hijack -hilly -hinder -hinge -hinged -hinger -hinges -hippie -hippo -hippy -hired -hires -hiring -hisser -hitch -hither -hoard -hoarse -hoary -hobbit -hobble -hobby -hobnob -hockey -hocus -hodge -hogan -hogger -hoist -hoity -hokey -holder -holds -holey -hollow -holly -homage -homely -homey -homier -homily -homing -honer -honest -honey -hooded -hoodoo -hooey -hoofer -hookah -hooker -hookup -hooper -hoopla -hooray -hoover -hooves -hoper -horde -horned -horner -hornet -horny -horrid -horror -horsey -hosier -hotbed -hotbox -hotel -hotpot -hotrod -hough -hound -houri -hourly -housed -houser -hovel -howdah -hoyden -hubbub -hubby -hubris -huddle -huffy -hullo -humane -humble -humbug -humeri -humid -hummus -humph -humus -hunch -hunger -hungry -hunky -hurdle -hurrah -hurray -hurter -hurtle -husky -hussar -hussy -hustle -hutch -hyaena -hydra -hydro -hyena -hymnal -hyper -hyrax -hyssop -iambi -iambic -iambus -ibidem -icebox -icecap -icicle -icing -ictus -ideate -idiocy -idiom -igloo -ignite -ignore -iguana -ileum -iliac -ilium -illume -imago -imbibe -imbue -immure -impact -impair -impala -impale -impart -imped -impede -impend -imping -impish -imply -import -impose -impugn -impute -inane -inborn -inbred -incest -incite -income -incurs -indeed -indict -indigo -indite -indium -indoor -induct -inept -inert -infamy -infant -infect -infill -infirm -infix -inflow -influx -inform -infra -ingot -inhere -inject -injure -inlaid -inland -inlay -inlet -inlier -inmate -inmost -innate -inner -input -inroad -inrush -insane -insert -inset -inside -instal -insure -intact -intake -intend -intent -inter -intern -inters -intone -intra -intro -intuit -inure -invent -invest -inward -iodate -iodide -iodine -iodise -iodize -ionic -ionise -ionize -ipecac -irate -irenic -ironer -irony -irrupt -island -islet -isobar -isomer -ispell -issued -issues -italic -itchy -itself -ivory -jabber -jabot -jackal -jaded -jagged -jaggy -jaguar -jalopy -jangle -jarful -jargon -jasper -jaunty -jazzy -jeans -jeerer -jejuna -jejune -jelly -jemmy -jennet -jenny -jerker -jerkin -jerky -jerry -jersey -jetsam -jetty -jewel -jiffy -jigger -jiggle -jiggly -jigsaw -jihad -jilter -jingle -jingly -jingo -jinked -jitsu -jitter -jobber -jockey -jocose -jocund -joggle -johnny -joined -joiner -joins -joint -joints -joist -jokey -jolly -jongg -jostle -joule -jounce -joust -jovial -jowly -joyed -joyful -joyous -judder -judger -jugful -juice -juicy -jujube -jumble -jumbo -jumpy -junco -jungle -junior -junket -junkie -junky -junta -juries -jurist -juror -juster -justly -kaboom -kabuki -kaftan -kaiser -kaolin -kapok -kappa -kaput -karate -karma -karmic -kayak -kazoo -kebab -keeler -keener -kelvin -kennel -kerned -kernel -ketch -ketone -kettle -keypad -khaki -kibble -kibosh -kicky -kiddie -kiddo -kidnap -kidney -killer -kilohm -kilter -kimono -kinda -kindle -kindly -kingly -kinked -kinky -kiosk -kipper -kirsch -kismet -kitbag -kitsch -kitty -klaxon -kludge -knack -knead -kneel -knell -knelt -knick -knife -knight -knish -knives -knobby -knock -knoll -knotty -knower -known -knurl -koala -kooky -kopeck -kopeks -kosher -kowtow -kraal -kraft -krill -krona -krone -kroner -kronor -kronur -kudos -kudzu -kulaks -label -labia -labial -labile -labium -labour -laced -lacer -laces -lacier -lacing -lackey -lactic -lacuna -ladder -laddie -laden -lading -ladle -lagoon -laird -laity -lambda -lamber -lamed -lament -lamina -lamper -lance -lancet -landau -lander -lanky -lapdog -lapel -lapin -lappet -lapse -lapser -laptop -larch -lards -lardy -large -largo -lariat -larker -larva -larvae -larval -larynx -lashed -lasher -lassie -lasso -lasted -lasts -latch -latent -later -latest -latex -lathe -lather -latish -latte -latter -lauder -lauds -launch -laurel -lavage -lavish -lawful -lawyer -laxes -laxity -layer -laying -layman -laymen -layout -layup -lazuli -leach -leaded -leaden -leader -leafy -league -leaker -leaky -leaner -leant -leaper -leapt -learn -learns -learnt -lease -leash -least -leave -leaves -lecher -ledge -leech -leery -leeway -legacy -legal -legato -legend -leggy -legit -legume -lemma -lemme -lemon -lemony -lemur -length -lenser -lentil -lento -leper -lepta -lepton -lesion -lessee -lesser -lessor -lethal -letter -letup -level -levity -lewis -lexeme -liable -liaise -libel -libero -libido -lichee -lichen -licit -licker -lieder -liege -lieut -lieux -ligand -light -lignum -likely -liken -liker -likest -liking -lilac -lilly -limbo -limper -limpet -limpid -linage -linden -lineal -linear -lined -linen -lines -linger -lingo -lining -linked -links -linnet -lintel -linty -lipase -lipid -lippy -liquid -liquor -lisle -lissom -listed -listen -litany -lithe -litmus -litre -litter -little -lived -lively -liven -lives -livest -livid -living -lizard -llama -loads -loamy -loath -loathe -loaves -lobar -lobule -local -locale -lochs -locked -locket -locks -locus -locust -lodge -lodged -lodges -lofter -lofty -loggia -logia -logic -login -logjam -logout -loiter -loller -lolly -lonely -loofah -looked -looks -lookup -loony -looper -loopy -loose -loosed -looses -loper -lordly -loris -lorry -lossy -lotion -lotto -lotus -louden -lounge -loupe -louse -lousy -louvre -loved -lovely -loving -lowish -lowly -loyal -lubber -lucent -lucid -lucky -lucre -luger -lumbar -lumber -lumen -lumpen -lumper -lumpy -lunacy -lunar -lunate -lunch -lunge -lunger -lupin -lupine -lupus -lurch -lurer -lurex -lurid -lustre -lusty -luting -luxury -lyceum -lychee -lying -lymph -lynch -lyric -lyrist -lysine -macaw -macer -macho -macro -macron -madam -madame -madcap -madden -madman -madmen -madras -maggot -magic -magma -magnum -magpie -mahout -maiden -mainly -mains -maize -major -makes -making -malady -malice -malign -mallet -mallow -malted -malty -mamba -mambo -mammal -mammy -manage -mangle -mango -mangy -mania -maniac -manic -manioc -manly -manna -manned -manner -manor -manse -manta -mantel -mantis -mantle -mantra -manual -manure -maple -mapped -maraca -maraud -marble -march -margin -maria -marine -marked -market -markka -marks -marlin -marmot -maroon -marque -marred -marrow -marry -marshy -marten -martin -martyr -marvel -mascot -masked -masks -mason -masque -massif -master -maths -mating -matins -matrix -matron -matte -matter -mature -matzo -mauve -maxim -maxima -maxing -maybe -mayday -mayfly -mayhap -mayhem -mayor -mayst -mazer -meadow -meagre -mealy -meaner -meanie -meanly -meant -measly -meaty -medal -meddle -media -medial -median -medico -medium -medley -meeter -megohm -mellow -melon -melted -melter -melts -member -memoir -memory -mender -menial -meninx -mental -mentor -mercer -merge -merino -merlin -merry -mescal -meshed -meson -messy -metal -meter -method -methyl -metier -metro -mettle -mezzo -miasma -mickey -midday -midden -middle -middy -midge -midget -midrib -midst -midway -mighty -mikado -milady -milch -milden -mildew -miler -milieu -milky -millet -mimer -mimosa -minded -minder -mined -mines -mingle -minim -minima -mining -minion -minke -minnow -minor -minty -minuet -minus -minute -mirage -misery -misfit -mishap -mislay -misled -missal -misses -missus -misty -misuse -mitre -mitten -mixed -mixes -mixing -mizzen -mobber -mocha -mocker -modal -model -modem -modern -modest -modish -moduli -modulo -modus -moggie -mogul -mohair -moiety -moire -moist -molal -molar -molly -molten -moment -momma -monad -money -monger -monies -monism -monkey -monody -month -mooch -moody -moose -mooter -moped -mopish -moppet -moral -morass -moray -morbid -morel -morgue -morose -morph -morris -morrow -morsel -mortal -mortar -mortem -mosaic -mosey -mosque -mossy -motel -motet -mother -motif -motile -motion -motive -motley -mottle -motto -mould -moulds -mouldy -moult -mound -mounts -mouse -mousey -mousse -mousy -mouthy -moved -mover -moves -moving -mowing -mucker -mucky -mucosa -mucous -mucus -muddle -muddy -muesli -muffin -muffle -mufti -muggy -mulch -mulct -mulish -mullah -mullet -multi -mumble -mumbo -mummer -mummy -mumps -munch -munge -mural -murder -murky -murmur -muscat -muscle -muser -museum -mushy -music -muskeg -musky -muslin -mussel -muster -musty -mutant -mutate -muted -mutely -muter -mutest -mutiny -mutter -mutton -mutual -muumuu -muzzle -mynah -myopia -myopic -myriad -myrrh -myself -mystic -nabob -nacho -nacre -nadir -naffer -naiad -naifs -nailer -naive -naked -namby -named -namely -namer -nanny -napalm -napkin -nappy -narky -narrow -nasty -natal -natch -nation -native -natter -natty -nature -nausea -naval -navel -navvy -nearby -neaten -nebula -necker -nectar -needed -needer -needy -negate -neigh -nelson -nephew -nerdy -nerve -nervy -nester -nestle -nether -netter -nettle -neural -neuron -never -newbie -newel -newish -newsy -newton -nexus -niacin -nibble -nicety -niche -nickel -niece -nifty -night -nights -nimbi -nimble -nimbus -ninety -ninja -ninny -nippy -nitwit -nobody -nodal -noddle -noddy -nodule -noggin -nohow -noire -noisy -nomad -nonage -nonce -nones -noodle -noose -normal -north -nosey -nosing -notary -notch -notify -notion -nougat -nought -nounal -novae -novena -novice -noway -nozzle -nuance -nubby -nubile -nuclei -nuder -nudes -nudge -nudger -nugget -number -nuncio -nurse -nurser -nutate -nutmeg -nutria -nutty -nuzzle -nylon -nymph -oafish -oaken -oakum -oases -oasis -oaten -obese -obeyer -oblate -oblige -oblong -oboist -obtuse -occult -occur -ocean -ocelot -ochre -octal -octane -octant -octave -octavo -octet -octile -ocular -oddity -odious -odium -odour -oedema -oeuvre -offal -offer -offing -offish -offset -often -ogive -ogress -ogrish -okapi -olden -oldie -oldish -olefin -olive -omega -omelet -oncer -onion -onrush -onset -onside -onward -oodles -opaque -opened -opens -opiate -opine -opioid -opium -oppose -optic -optics -optima -option -oracle -orang -orate -orator -orchid -ordain -ordeal -ordure -oriel -origin -oriole -orison -ormolu -ornate -orphan -orris -osier -osmium -osprey -ossify -ostler -other -otiose -otter -ought -ounce -outang -outcry -outdo -outer -outfit -outfox -outgo -outing -outlay -output -overdo -overly -overt -owlet -owlish -owned -owner -oxalic -oxbow -oxide -oxtail -oyster -ozone -pacer -paces -pacey -packed -packs -padded -paddle -paddy -padre -paean -paella -paeony -pagan -paged -pagoda -paint -paired -palace -palate -palely -paler -palest -paling -palish -pallid -pallor -palmer -palmy -palsy -paltry -pamby -pampas -panama -panda -pander -panel -panic -panky -pansy -pantry -panzer -papacy -papal -papaw -papaya -papers -papery -papist -papyri -parade -parcel -parch -pardon -parer -parers -pares -pariah -paring -parish -parity -parka -parky -parley -parody -parole -parry -parse -parsec -parsed -parson -parter -partly -parts -party -pascal -pasha -passim -pasta -paste -pastel -paster -pastis -pastor -pastry -pasts -pasty -patch -patchy -paten -patent -pater -pathos -patina -patio -patois -patrol -patten -patter -patty -paunch -pause -paved -paver -paves -paving -pawner -paxes -payee -payer -payout -peace -peach -peachy -peahen -peaky -pealed -peals -peanut -pearl -pearly -peats -peaty -pebble -pebbly -pecan -pectic -pectin -pedal -peddle -pedlar -peeled -peeler -peeve -peewee -pekoe -pelmet -pelter -pelvic -pelvis -penal -pence -pencil -penman -penmen -pennon -penury -peony -people -pepper -peppy -pepsin -peptic -perch -percha -peril -perky -permit -peruke -peruse -peseta -pesky -pestle -pesto -petal -petard -petite -petrel -petrol -petty -pewee -pewit -pewter -peyote -phage -phalli -phase -phenol -phenyl -phial -phlegm -phloem -phlox -phobia -phobic -phoebe -phoney -phonic -phonon -phony -phooey -photo -photon -phrase -phyla -phylum -physic -piano -piazza -picked -picket -pickle -picky -picnic -picot -piddle -pidgin -piece -piecer -pieing -piety -piffle -piggy -piglet -pigsty -pilaf -pilers -pileup -pilfer -piling -pillar -pillow -pimple -pimply -pince -pincer -pinch -pineal -pinged -pinger -pinion -pinkie -pinky -pinna -pinnae -pinned -pious -piping -pipit -pippin -pique -piracy -pisser -piste -pistil -pistol -piston -pitch -pithy -pitman -piton -pixel -pixie -pixmap -pizazz -pizza -placed -placer -placid -plague -plaice -plaid -plains -plaint -plait -planar -plane -planet -plank -plant -plaque -plash -plasm -plasma -plate -platen -played -plays -plaza -please -pleat -pledge -plenty -plenum -pleura -plexus -pliant -pliers -plight -plinth -plover -plucky -plugs -plumb -plume -plummy -plump -plunge -plunk -plural -plush -plushy -poach -pocket -pocus -podgy -podium -poesy -poetic -poetry -pogrom -point -pointy -poise -poison -polar -poler -policy -polio -polish -polite -polka -pollen -poller -pomade -pommel -pompom -ponce -poncho -ponder -pongee -pooch -poodle -popgun -poplar -poplin -poppet -poppy -porch -porky -porous -portal -porter -portly -poser -poseur -posing -posses -possum -postal -posted -poster -posts -potage -potash -potato -potent -potful -potion -potty -pouch -pouffe -pounce -pound -pourri -powder -power -powwow -praise -prank -prawn -praxes -praxis -prayer -preach -precut -preen -prefab -prefix -premed -premix -press -presto -pretty -price -priced -pricer -pricey -prick -priest -primal -prime -primp -prince -print -prints -prions -prior -priori -priory -prise -priser -prism -prissy -privet -privy -prize -prober -prolix -promo -prompt -prone -prong -pronto -proof -proper -prose -proser -prosy -protea -proton -proud -prove -proved -proven -proves -prowl -proxy -prune -pseudo -pshaw -psych -psyche -psycho -psychs -puddle -pudgy -pueblo -puffer -puffin -puffy -pukka -pullet -pulley -pulper -pulpit -pulpy -pulsar -pulse -pulsed -pulser -pulses -pumice -pummel -pumper -punchy -pundit -punky -punnet -pupae -pupal -pupate -pupil -puppy -purdah -purge -purine -purism -purist -purity -purple -purse -pursue -purvey -pushy -putrid -putsch -puttee -putter -putty -pygmy -pyjama -pyknic -pylon -pylori -pyrite -python -pyxis -quack -quaff -quail -quaint -quake -quaky -qualm -quango -quanta -quark -quarry -quart -quarto -quartz -quasar -quash -quasi -quaver -queasy -queen -queer -quell -quench -quern -query -quest -quests -queue -queuer -quiche -quick -quiet -quiff -quill -quilt -quince -quinsy -quint -quire -quirk -quirky -quirt -quite -quiver -quizzy -quoin -quoit -quorum -quoted -quoter -quoth -qwerty -rabbi -rabble -rabid -rabies -raceme -racism -racket -radar -radial -radian -radii -radish -radium -radius -radix -radon -raffia -raffle -ragbag -ragged -raglan -ragout -ragtag -railer -rainy -raise -raisin -raison -rajah -raker -rakish -rally -ramie -ramjet -ranch -rancid -randy -ranee -range -rangy -ranked -ranker -rankle -rapid -rapier -rapine -rappel -rarefy -rarity -rascal -rasper -raspy -raster -rather -rating -ratio -ration -rattan -rattle -rattly -ratty -ravage -ravel -raven -ravine -rayon -razor -reach -react -reacts -reader -reads -ready -realm -rebate -rebel -rebook -rebut -recall -recap -recent -recipe -recite -reckon -recoil -recopy -record -recoup -rector -recur -recurs -redact -redbud -redcap -redden -redeem -redial -redraw -reedy -reeve -refile -refill -refine -refit -reflex -refuge -refund -refuse -regain -regale -regard -reggae -regime -regrow -rehab -rehang -rehear -reheat -rehire -reign -reject -rejoin -reknit -relax -relay -relic -relict -relief -reline -relish -relit -reload -relock -remain -remake -remand -remap -remark -remelt -remind -remiss -remit -remix -remote -remove -renal -render -renege -rennet -rennin -renown -rental -reopen -repack -repair -repast -repave -repeal -repel -repent -replay -reply -report -repose -repost -reread -resat -rescue -resent -reset -reship -resift -resign -resin -resiny -resole -result -resume -retail -retain -retch -retest -retina -retool -retort -retro -retry -retune -revamp -revere -revet -revile -revise -revive -revue -rewash -rewed -rewind -rhesus -rheum -rheumy -rhino -rhyme -ribald -ribbon -richen -ridden -riddle -rider -riders -ridge -ridgy -riding -riffle -rifled -rigger -right -rights -rigid -rigour -rinse -rinser -ripely -riper -ripple -ripply -ripsaw -risen -risky -ritual -ritzy -riven -river -riyal -roach -roadie -roast -robber -robed -robin -robot -robust -rocker -rocky -rococo -rodent -rodeo -roger -rogue -roller -rondo -rookie -roomy -roost -ropey -rosary -roster -rotary -rotate -rotor -rotten -rotter -rotund -rouble -rouge -rough -rouse -rouser -roust -route -rowdy -rowel -royal -rubati -rubato -rubber -rubble -rubout -rubric -ruddy -ruffle -rugby -ruled -ruler -ruling -rumba -rumble -rumen -rummer -rummy -rumour -rumple -rumply -rumpus -runlet -runnel -runner -runny -runty -runway -rupee -rupiah -rural -rushy -russet -rustic -rustle -rustre -rutty -sable -sabot -sabra -sabre -sachem -sachet -sacker -sacra -sacral -sacred -sacrum -sadden -saddle -safari -safely -safety -sagely -saggy -sahib -sailor -saint -saker -salaam -salad -salami -salary -saline -sallow -sally -salmon -salon -saloon -salsa -salted -salts -salty -salvo -samba -sampan -sample -sandal -sander -sandy -sanely -sappy -sarong -sateen -satin -satiny -satori -satrap -satyr -saucer -saucy -sauna -savant -saved -savour -savoy -sawfly -sawyer -saying -scabby -scalar -scald -scale -scaled -scales -scalp -scaly -scamp -scampi -scans -scanty -scape -scarab -scarce -scarer -scarf -scarp -scary -scathe -scent -schema -scheme -schism -schist -schizo -school -schuss -schwa -scion -scoff -scold -sconce -scone -scoot -scope -scored -scores -scotch -scour -scout -scowl -scrag -scram -scrap -scrape -scrawl -scree -screed -screen -screw -screwy -scribe -scrim -scrimp -scrip -script -scroll -scrub -scrum -scuba -scuff -scull -sculpt -scummy -scurf -scurfy -scurry -scurvy -scythe -seabed -sealer -seaman -seamer -seance -season -seater -seaway -secant -secede -second -secret -sector -sects -secure -sedan -sedge -sedgy -seeded -seeder -seedy -seeing -seemly -seethe -segue -seine -seisin -seize -seldom -select -seller -selves -sempre -senate -sender -senile -senior -senna -sense -sensor -sentry -sepal -sepia -sepoy -sepses -sepsis -septa -septet -septum -sequel -sequin -serape -serene -serge -series -serif -sermon -serous -serum -serve -served -server -serves -servo -sesame -settee -settle -seven -severe -sewage -sewer -sexpot -sextet -sexton -shabby -shack -shaded -shady -shaft -shaggy -shake -shaken -shaky -shale -shall -shalom -shaman -shandy -shank -shanty -shaped -shapes -shard -share -shared -shark -sharp -shave -shaven -shawl -shawm -shchi -sheaf -shear -sheath -sheave -sheen -sheeny -sheep -sheer -sheet -sheik -sheikh -shekel -shelf -shell -shelve -sherds -sherry -shield -shifty -shimmy -shine -shiny -ships -shire -shirk -shirr -shirt -shiver -shoal -shoat -shoddy -shogun -shone -shook -shoot -shoots -shore -shorn -short -shorty -shots -should -shout -shouts -shove -showed -shower -shown -shows -showy -shrank -shred -shrew -shrewd -shriek -shrift -shrike -shrill -shrimp -shrine -shrink -shrive -shroud -shrub -shrug -shrunk -shtick -shunt -shush -shyer -shyest -shyly -sicken -sickie -sickly -sided -sides -siding -sidle -siege -sienna -sierra -siesta -sieve -sifted -sifts -sigma -signet -signor -signs -silage -silent -silica -silken -silky -silly -silty -simian -simile -simmer -simon -simony -simoom -simper -simple -since -sinew -sinful -singe -single -sinter -sinus -siphon -siren -sisal -sissy -sister -sitcom -sitter -sixer -sixth -sixty -sized -sizes -sizing -sizzle -skate -skeet -skein -skewer -skiff -skill -skimpy -skinny -skirt -skirts -skivvy -skulk -skull -skunk -skyway -slack -slain -slake -slalom -slang -slangy -slant -slash -slate -slaver -sledge -sleek -sleeps -sleepy -sleet -sleety -sleeve -sleigh -slept -sleuth -slice -slick -slide -slime -slimy -sling -slink -slinky -sliver -slogan -sloop -slope -sloppy -slosh -slouch -slough -sloven -sludge -sludgy -sluice -slummy -slump -slung -slunk -slurp -slurry -slushy -slyly -smack -small -smarmy -smart -smarts -smear -smell -smelly -smelt -smiler -smiley -smirch -smirk -smite -smiter -smithy -smock -smoggy -smoke -smoky -smooch -smote -smudgy -snack -snafu -snail -snake -snaky -snappy -snaps -snare -snarer -snarly -snatch -snazzy -sneaky -sneeze -snick -snide -sniff -snipe -snippy -snitch -snivel -snobby -snood -snook -snoop -snoopy -snooty -snooze -snore -snort -snotty -snout -snowy -snuff -soaker -soapy -soarer -soccer -socio -sodden -sodium -soever -soften -softer -softly -softy -soggy -soiled -soiree -solace -solar -solder -soled -solely -soles -solid -soling -solute -solve -solved -sombre -sonar -sonata -sonnet -sonny -soothe -sooty -soppy -sorbet -sordid -sorrel -sorrow -sorry -sorted -sorter -sortie -sough -sought -sound -soupy -source -souse -south -soviet -sower -spacey -spadix -spank -spare -spark -sparky -spars -sparse -spasm -spate -spathe -spatio -spavin -spawn -speak -speaks -spear -specie -speck -speedy -spell -spelt -spend -spent -sphinx -spice -spicy -spider -spiel -spiffy -spigot -spike -spiky -spill -spilt -spinal -spinet -spiny -spiral -spire -spired -spires -spirit -spiry -spite -splat -splay -spleen -splice -spline -splint -split -spoil -spoilt -spoken -spongy -spoof -spook -spooky -spool -spoor -spore -sporty -spots -spotty -spouse -spout -sprain -sprang -sprat -sprawl -spray -spree -sprig -sprint -sprite -sprout -spruce -sprue -sprung -spryer -spryly -spume -spumy -spurge -spurn -spurt -sputa -squab -squad -squall -square -squash -squat -squaw -squawk -squeal -squib -squid -squint -squire -squirl -squirm -squirt -stably -stadia -staff -stager -stagy -staid -stair -stake -stale -stalk -stall -stamen -stamp -stance -stank -stanza -staple -stare -stark -starry -start -starts -starve -stash -stasis -state -stated -stater -states -static -stator -statue -status -stave -stayer -stead -steady -steak -steal -steamy -steed -steel -steely -steep -steers -stein -stench -steno -steppe -stereo -stern -sticky -stiff -stigma -stile -still -stingy -stink -stinky -stint -stitch -stoat -stock -stodgy -stoic -stoke -stole -stolen -stolid -stolon -stoma -stomal -stomp -stoner -stony -stood -stooge -stool -stoop -store -storer -storey -stork -stormy -story -stoup -stout -stove -strafe -strain -strait -strand -strap -strata -strati -straw -stray -streak -stream -street -strew -strewn -stria -striae -stride -strife -strim -string -strip -stripe -strive -strobe -strode -stroke -stroll -strop -strove -struck -strum -strung -strut -stubby -stucco -stuck -studio -stuff -stuffs -stuffy -stump -stumpy -stung -stunk -stupid -stupor -sturdy -style -styler -styli -stylus -stymie -suave -subdue -sublet -submit -subnet -suborn -subset -subtle -subtly -suburb -subway -sucker -suckle -sudden -sudsy -suede -sugar -sugary -suite -suited -suitor -sulky -sullen -sully -sultan -sultry -sumac -summon -sundae -sunder -sundry -sunken -sunlit -sunny -sunset -suntan -super -superb -supine -supple -supply -supra -surer -surety -surge -surly -surtax -survey -sushi -sutler -suture -svelte -swain -swami -swampy -swanky -sward -swarm -swart -swash -swatch -swath -swathe -swear -sweaty -swede -sweet -swell -swept -swerve -swift -swill -swine -swipe -swirl -swirly -swish -switch -swivel -swizz -swoon -swoop -swoosh -swore -sworn -swung -sylph -sylvan -synch -syndic -synod -syntax -syphon -syrup -syrupy -syzygy -tabby -tabla -table -tablet -taboo -tabor -tacit -tackle -tacky -tactic -tagged -taiga -taint -taken -taker -talcum -talkie -talky -tallow -tally -talon -talus -tamale -tamed -tamper -tandem -tangle -tango -tangy -tanned -tannin -tansy -tantra -taper -tapir -tapped -tappet -tardy -target -tariff -tarmac -tarot -tarpon -tarry -tarsal -tarsi -tarsus -tartan -tartar -tassel -tastes -tasty -tatter -tattle -tattoo -taught -taupe -tavern -tawdry -tawny -taxer -taxies -taxing -teabag -teapot -tease -teasel -teazel -teazle -techs -teddy -tedium -teens -teeny -teepee -teeter -teeth -teethe -telex -teller -telly -temper -tempi -temple -tempo -tempt -tenant -tench -tended -tendon -tends -tenet -tenner -tennis -tenon -tenor -tenpin -tense -tensor -tenter -tenth -tents -tenure -tepee -tepid -tercel -terns -terry -terse -tested -tests -testy -tetchy -tether -tetra -thane -thatch -theft -their -theism -theist -theme -thence -there -therm -these -thesis -theta -thick -thief -thieve -thigh -thine -thing -think -third -thirst -thirty -thole -thorax -thorny -those -though -thrall -thrash -thread -threat -three -thresh -threw -thrice -throb -throe -throne -throng -throw -thrown -thrum -thrush -thrust -thumb -thump -thunk -thwack -thwart -thyme -thymus -tiara -tibia -tibiae -tickle -tidal -tiger -tight -tilde -tiled -tilled -tiller -tilth -timber -timbre -timed -timely -timer -timid -timing -tinder -tinge -tingle -tingly -tinker -tinkle -tinny -tinpot -tinsel -tippet -tipple -tipsy -tiptoe -tiptop -tirade -tired -tiring -tissue -titan -titbit -tithe -title -titled -titre -titter -tittle -tizzy -toady -toast -toasty -tocsin -today -toddle -toddy -toecap -toffee -toggle -toilet -toity -token -tomato -tomboy -tomcat -tomtit -tonal -toned -toner -tongue -tonic -toning -tonne -tonsil -tooled -tools -tooth -toothy -tootle -toots -tootsy -topaz -toper -topic -topple -toque -torch -toroid -torpid -torpor -torque -torrid -torso -torte -torus -total -totem -totter -toucan -touch -touchy -tough -toupee -tourer -tousle -toward -towbar -towel -tower -townee -townie -toxic -toxin -trace -traced -traces -tracts -tragic -trail -trails -train -trains -trait -traits -tramp -trance -tranny -trashy -trauma -travel -trawl -tread -treat -treats -treaty -treble -tremor -trench -trendy -trews -triad -triage -tribal -trice -tricky -tried -tries -trifle -trike -trilby -trill -triode -tripe -triple -triply -tripod -tripos -trite -triune -trivet -trivia -troika -troll -tromp -troop -trophy -tropic -troth -trough -troupe -trout -trove -trowel -truant -truce -truck -trudge -truism -truly -trump -trunk -truss -trusty -truth -tryst -tsetse -tubby -tubing -tubule -tucker -tulip -tulle -tumble -tumid -tummy -tumour -tumult -tundra -tuned -tunes -tunic -tuning -tunnel -tunny -tupelo -turban -turbid -turbo -turbot -tureen -turfy -turgid -turkey -turned -turner -turnip -turret -turtle -turvy -tussle -tutor -tutti -tuxedo -twain -twang -twangy -tweak -tweed -tweedy -tweet -tweeze -twelve -twenty -twerp -twice -twiggy -twilit -twill -twine -twinge -twirl -twist -twisty -twitch -tycoon -typed -typhus -typify -tyrant -tyred -ukase -ulcer -ulnae -ulnar -ulster -ultimo -ultra -umbel -umber -umbra -umbrae -umlaut -umpire -unable -unary -unban -unbar -unbend -unbolt -uncial -unclad -uncle -uncool -uncork -uncurl -uncut -under -undue -unease -uneven -unfair -unfelt -unfit -unfix -unhand -unholy -unhurt -union -unique -unisex -unison -unite -unity -unjust -unkind -unkink -unlace -unlap -unlike -unlink -unlit -unload -unlock -unmake -unmask -unmesh -unmet -unpack -unpick -unpin -unplug -unread -unreal -unrest -unruly -unsafe -unset -unshod -unsnap -unsure -unties -until -untrue -unwind -unwire -unyoke -upbeat -update -upend -upheld -uphill -uphold -upkeep -upland -uplift -uplink -upload -upped -upper -upping -uppish -uppity -uprate -uproar -uproot -upset -upshot -upside -uptake -uptime -uptown -upturn -upward -upwind -uracil -urban -urbane -urchin -ureter -urgent -urinal -ursine -usable -usage -useful -using -usual -usurer -usury -utile -utmost -utopia -utter -uvula -uvular -vacant -vacate -vacua -vacuum -vagary -vague -valet -valise -valley -valour -valued -valuer -values -vamped -vamps -vandal -vanity -vapid -vapour -varied -varlet -vassal -vault -vaunt -vector -vegan -veggie -velar -veldt -vellum -velour -velum -velvet -vendor -venial -venom -venous -vented -venue -verbal -verge -verger -verify -verity -vermin -vernal -versa -verse -versed -verso -versus -vertex -verve -vesper -vessel -vestal -vetch -vetoes -viable -viand -vicar -victor -video -views -vigil -vigour -viking -viler -vilify -villa -villi -villus -vinous -vinyl -violet -violin -viper -virago -viral -vireo -virus -visage -viscid -viscus -vision -visit -visits -visor -vista -visual -vitae -vitro -vivace -vivid -vivify -vixen -vizier -vocab -vodka -vogue -voice -voiced -voices -voided -voids -voile -volley -volte -volume -volute -voodoo -vortex -votary -vouch -vowel -voyage -vulgar -wacky -waddle -wafer -waffle -wager -waggle -wagon -wailer -waist -waive -waken -wakeup -walkie -wallet -wallop -wallow -walnut -walrus -waltz -wampum -wander -wangle -wanted -wanton -wapiti -warble -warded -warden -warder -warier -warmer -warmly -warmth -warren -washed -washes -waste -watery -wattle -waver -waxen -waylay -weaken -wealth -wearer -wears -weasel -weave -weaves -wedded -wedge -weedy -weekly -weenie -weensy -weeny -weepy -weevil -weigh -weight -weird -welled -wells -welsh -welter -wench -whack -whale -wharf -wheal -wheat -wheel -wheeze -wheezy -whelk -whelm -whelp -whence -where -which -whiff -while -whilom -whilst -whims -whimsy -whinny -whiny -whirl -whirr -whisk -whisky -whist -white -whiten -whitey -whole -wholly -whoop -whoosh -whorl -whose -whoso -wicked -wicket -widen -widget -widow -width -wield -wifely -wiggle -wiggly -wigwag -wigwam -wilder -wilful -willed -willow -willy -wimple -wimpy -wince -winch -winds -windy -winery -winkle -winnow -winter -wintry -wired -wirer -wiring -wisdom -wised -wiser -wises -wisest -wising -wispy -withal -wither -within -witty -wives -wizen -wobbly -woken -wolves -woman -wombat -women -wonky -wooden -woods -woody -woolly -woozy -wordy -worker -wormer -wormy -worse -worsen -worst -worthy -would -wound -wounds -woven -wrack -wraith -wrasse -wreak -wreath -wreck -wrest -wring -write -writes -writhe -wrong -wroth -wrung -wryer -wryest -wryly -wurzel -xenon -xylem -xylol -yammer -yarrow -yeasty -yellow -yeoman -yeomen -yield -yikes -yippee -yobbo -yodel -yoked -yokel -yokes -yoking -yonder -young -youth -yucca -yucky -yummy -yuppie -zealot -zebra -zenith -zephyr -zeroes -zeugma -zigzag -zilch -zinnia -zippy -zither -zloty -zodiac -zombie -zonked -zygote \ No newline at end of file diff --git a/freecap/COPYING.txt b/freecap/COPYING.txt deleted file mode 100644 index 45645b4..0000000 --- a/freecap/COPYING.txt +++ /dev/null @@ -1,340 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General -Public License instead of this License. diff --git a/freecap/freecap.php b/freecap/freecap.php deleted file mode 100644 index f639c75..0000000 --- a/freecap/freecap.php +++ /dev/null @@ -1,827 +0,0 @@ -isFeatureActive( 'freecap_use_dict' );; -// if your server is NOT set up to deny web access to files beginning ".ht" -// then you should ensure the dictionary file is kept outside the web directory -// eg: if www.foo.com/index.html points to c:\website\www\index.html -// then the dictionary should be placed in c:\website\dict.txt -// test your server's config by trying to access the dictionary through a web browser -// you should NOT be able to view the contents. -// can leave this blank if not using dictionary -$dict_location = "./.ht_freecap_words"; - -// used to calculate image width, and for non-dictionary word generation -$max_word_length = 6; - -// text colour -// 0=one random colour for all letters -// 1=different random colour for each letter -$col_type = 1; - -// maximum times a user can refresh the image -// on a 6500 word dictionary, I think 15-50 is enough to not annoy users and make BF unfeasble. -// further notes re: BF attacks in "avoid brute force attacks" section, below -// on the other hand, those attempting OCR will find the ability to request new images -// very useful; if they can't crack one, just grab an easier target... -// for the ultra-paranoid, setting it to <5 will still work for most users -$max_attempts = 100; - -// list of fonts to use -// font size should be around 35 pixels wide for each character. -// you can use my GD fontmaker script at www.puremango.co.uk to create your own fonts -// There are other programs to can create GD fonts, but my script allows a greater -// degree of control over exactly how wide each character is, and is therefore -// recommended for 'special' uses. For normal use of GD fonts, -// the GDFontGenerator @ http://www.philiplb.de is excellent for convering ttf to GD - -// the fonts included with freeCap *only* include lowercase alphabetic characters -// so are not suitable for most other uses -// to increase security, you really should add other fonts -$font_locations = Array("./.ht_freecap_font1.gdf","./.ht_freecap_font2.gdf","./.ht_freecap_font3.gdf","./.ht_freecap_font4.gdf","./.ht_freecap_font5.gdf"); - -// background: -// 0=transparent (if jpg, white) -// 1=white bg with grid -// 2=white bg with squiggles -// 3=morphed image blocks -// 'random' background from v1.3 didn't provide any extra security (according to 2 independent experts) -// many thanks to http://ocr-research.org.ua and http://sam.zoy.org/pwntcha/ for testing -// for jpgs, 'transparent' is white -$bg_type = 2; -// should we blur the background? (looks nicer, makes text easier to read, takes longer) -$blur_bg = true; -// for bg_type 3, which images should we use? -// if you add your own, make sure they're fairly 'busy' images (ie a lot of shapes in them) -$bg_images = Array("./.ht_freecap_im1.jpg","./.ht_freecap_im2.jpg","./.ht_freecap_im3.jpg","./.ht_freecap_im4.jpg","./.ht_freecap_im5.jpg"); -// for non-transparent backgrounds only: - // if 0, merges CAPTCHA with bg - // if 1, write CAPTCHA over bg - $merge_type = 1; - // should we morph the bg? (recommend yes, but takes a little longer to compute) - $morph_bg = true; - -// you shouldn't need to edit anything below this, but it's extensively commented if you do want to play -// have fun, and email me with ideas, or improvements to the code (very interested in speed improvements) -// hope this script saves some spam :-) - - - -////////////////////////////////////////////////////// -////// Create Images + initialise a few things -////////////////////////////////////////////////////// - -// seed random number generator -// PHP 4.2.0+ doesn't need this, but lower versions will -$seed_func(make_seed()); - -// how faded should the bg be? (100=totally gone, 0=bright as the day) -// to test how much protection the bg noise gives, take a screenshot of the freeCap image -// and take it into a photo editor. play with contrast and brightness. -// If you can remove most of the bg, then it's not a good enough percentage -switch($bg_type) -{ - case 0: - break; - case 1: - case 2: - $bg_fade_pct = 65; - break; - case 3: - $bg_fade_pct = 50; - break; -} -// slightly randomise the bg fade -$bg_fade_pct += $rand_func(-2,2); - -// read each font and get font character widths -$font_widths = Array(); -for($i=0 ; $i 6 chars in length really. -$width = ($max_word_length*(array_sum($font_widths)/sizeof($font_widths))+20); -$height = !empty( $_REQUEST['height'] ) ? $_REQUEST['height'] : 75; - -$im = ImageCreate($width, $height); -$im2 = ImageCreate($width, $height); - - - -////////////////////////////////////////////////////// -////// Avoid Brute Force Attacks: -////////////////////////////////////////////////////// -if(empty($_SESSION['freecap_attempts'])) -{ - $_SESSION['freecap_attempts'] = 1; -} else { - $_SESSION['freecap_attempts']++; - - // if more than ($max_attempts) refreshes, block further refreshes - // can be negated by connecting with new session id - // could get round this by storing num attempts in database against IP - // could get round that by connecting with different IP (eg, using proxy servers) - // in short, there's little point trying to avoid brute forcing - // the best way to protect against BF attacks is to ensure the dictionary is not - // accessible via the web or use random string option - if($_SESSION['freecap_attempts']>$max_attempts) - { - $_SESSION['captcha'] = false; - - $bg = ImageColorAllocate($im,255,255,255); - ImageColorTransparent($im,$bg); - - $red = ImageColorAllocate($im, 255, 0, 0); - // depending on how rude you want to be :-) - //ImageString($im,5,0,20,"bugger off you spamming bastards!",$red); - // {{{ BIT_MOD - ImageString($im,5,15,5,"Please close browser",$red); - ImageString($im,5,15,25,"and load page again",$red); - ImageString($im,5,15,45,"to retry",$red); - // }}} BIT_MOD - - sendImage($im); - } -} - - - - - -////////////////////////////////////////////////////// -////// Functions: -////////////////////////////////////////////////////// -function make_seed() { -// from http://php.net/srand - list($usec, $sec) = explode(' ', microtime()); - return (float) $sec + ((float) $usec * 100000); -} - -function rand_color() { - global $bg_type,$rand_func; - if($bg_type==3) - { - // needs darker colour.. - return $rand_func(10,100); - } else { - return $rand_func(60,170); - } -} - -function myImageBlur($im) -{ - // w00t. my very own blur function - // in GD2, there's a gaussian blur function. bunch of bloody show-offs... :-) - - $width = imagesx($im); - $height = imagesy($im); - - $temp_im = ImageCreateTrueColor($width,$height); - $bg = ImageColorAllocate($temp_im,150,150,150); - - // preserves transparency if in orig image - ImageColorTransparent($temp_im,$bg); - - // fill bg - ImageFill($temp_im,0,0,$bg); - - // anything higher than 3 makes it totally unreadable - // might be useful in a 'real' blur function, though (ie blurring pictures not text) - $distance = 1; - // use $distance=30 to have multiple copies of the word. not sure if this is useful. - - // blur by merging with itself at different x/y offsets: - ImageCopyMerge($temp_im, $im, 0, 0, 0, $distance, $width, $height-$distance, 70); - ImageCopyMerge($im, $temp_im, 0, 0, $distance, 0, $width-$distance, $height, 70); - ImageCopyMerge($temp_im, $im, 0, $distance, 0, 0, $width, $height, 70); - ImageCopyMerge($im, $temp_im, $distance, 0, 0, 0, $width, $height, 70); - // remove temp image - ImageDestroy($temp_im); - - return $im; -} - -function sendImage($pic) -{ - // output image with appropriate headers - global $output,$im,$im2,$im3; - header(base64_decode("WC1DYXB0Y2hhOiBmcmVlQ2FwIDEuNCAtIHd3dy5wdXJlbWFuZ28uY28udWs=")); - switch($output) - { - // add other cases as desired - case "jpg": - header("Content-Type: image/jpeg"); - ImageJPEG($pic); - break; - case "gif": - header("Content-Type: image/gif"); - ImageGIF($pic); - break; - case "png": - default: - header("Content-Type: image/png"); - ImagePNG($pic); - break; - } - - // kill GD images (removes from memory) - ImageDestroy($im); - ImageDestroy($im2); - ImageDestroy($pic); - if(!empty($im3)) - { - ImageDestroy($im3); - } - exit(); -} - - - - -////////////////////////////////////////////////////// -////// Choose Word: -////////////////////////////////////////////////////// -if($use_dict==1) -{ - // load dictionary and choose random word - $words = @file($dict_location); - $word = strtolower($words[$rand_func(0,sizeof($words)-1)]); - // cut off line endings/other possible odd chars - $word = preg_replace("/[^a-z]/","",$word); - // might be large file so forget it now (frees memory) - $words = ""; - unset($words); -} else { - // based on code originally by breakzero at hotmail dot com - // (http://uk.php.net/manual/en/function.rand.php) - // generate pseudo-random string - // doesn't use ijtf as are easily mistaken - - // I'm not using numbers because the custom fonts I've created don't support anything other than - // lowercase or space (but you can download new fonts or create your own using my GD fontmaker script) - $consonants = 'bcdghklmnpqrsvwxyz'; - $vowels = 'aeuo'; - $word = ""; - - $wordlen = $rand_func(5,$max_word_length); - - for($i=0 ; $i<$wordlen ; $i++) - { - // don't allow to start with 'vowel' - if($rand_func(0,4)>=2 && $i!=0) - { - $word .= $vowels{$rand_func(0,strlen($vowels)-1)}; - } else { - $word .= $consonants{$rand_func(0,strlen($consonants)-1)}; - } - } -} - -// save hash of word for comparison -// using hash so that if there's an insecurity elsewhere (eg on the form processor), -// an attacker could only get the hash -// also, shared servers usually give all users access to the session files -// echo `ls /tmp`; and echo `more /tmp/someone_elses_session_file`; usually work -// so even if your site is 100% secure, someone else's site on your server might not be -// hence, even if attackers can read the session file, they can't get the freeCap word -// (though most hashes are easy to brute force for simple strings) -$_SESSION['captcha'] = $hash_func($word); - - - - -////////////////////////////////////////////////////// -////// Fill BGs and Allocate Colours: -////////////////////////////////////////////////////// - -// set tag colour -// have to do this before any distortion -// (otherwise colour allocation fails when bg type is 1) -$tag_col = ImageColorAllocate($im,10,10,10); -$site_tag_col2 = ImageColorAllocate($im2,0,0,0); - -// set debug colours (text colours are set later) -$debug = ImageColorAllocate($im, 255, 0, 0); -$debug2 = ImageColorAllocate($im2, 255, 0, 0); - -// set background colour (can change to any colour not in possible $text_col range) -// it doesn't matter as it'll be transparent or coloured over. -// if you're using bg_type 3, you might want to try to ensure that the color chosen -// below doesn't appear too much in any of your background images. -$bg = ImageColorAllocate($im, 254, 254, 254); -$bg2 = ImageColorAllocate($im2, 254, 254, 254); - -// set transparencies -ImageColorTransparent($im,$bg); -// im2 transparent to allow characters to overlap slightly while morphing -ImageColorTransparent($im2,$bg2); - -// fill backgrounds -ImageFill($im,0,0,$bg); -ImageFill($im2,0,0,$bg2); - -if($bg_type!=0) -{ - // generate noisy background, to be merged with CAPTCHA later - // any suggestions on how best to do this much appreciated - // sample code would be even better! - // I'm not an OCR expert (hell, I'm not even an image expert; puremango.co.uk was designed in MsPaint) - // so the noise models are based around my -guesswork- as to what would make it hard for an OCR prog - // ideally, the character obfuscation would be strong enough not to need additional background noise - // in any case, I hope at least one of the options given here provide some extra security! - - $im3 = ImageCreateTrueColor($width,$height); - $temp_bg = ImageCreateTrueColor($width*1.5,$height*1.5); - $bg3 = ImageColorAllocate($im3,255,255,255); - ImageFill($im3,0,0,$bg3); - $temp_bg_col = ImageColorAllocate($temp_bg,255,255,255); - ImageFill($temp_bg,0,0,$temp_bg_col); - - // we draw all noise onto temp_bg - // then if we're morphing, merge from temp_bg to im3 - // or if not, just copy a $widthx$height portion of $temp_bg to $im3 - // temp_bg is much larger so that when morphing, the edges retain the noise. - - if($bg_type==1) - { - // grid bg: - - // draw grid on x - for($i=$rand_func(6,20) ; $i<$width*2 ; $i+=$rand_func(10,25)) - { - ImageSetThickness($temp_bg,$rand_func(2,6)); - $text_r = $rand_func(100,150); - $text_g = $rand_func(100,150); - $text_b = $rand_func(100,150); - $text_colour3 = ImageColorAllocate($temp_bg, $text_r, $text_g, $text_b); - - ImageLine($temp_bg,$i,0,$i,$height*2,$text_colour3); - } - // draw grid on y - for($i=$rand_func(6,20) ; $i<$height*2 ; $i+=$rand_func(10,25)) - { - ImageSetThickness($temp_bg,$rand_func(2,6)); - $text_r = $rand_func(100,150); - $text_g = $rand_func(100,150); - $text_b = $rand_func(100,150); - $text_colour3 = ImageColorAllocate($temp_bg, $text_r, $text_g, $text_b); - - ImageLine($temp_bg,0,$i,$width*2, $i ,$text_colour3); - } - } else if($bg_type==2) { - // draw squiggles! - - $bg3 = ImageColorAllocate($im3,255,255,255); - ImageFill($im3,0,0,$bg3); - ImageSetThickness($temp_bg,4); - - for($i=0 ; $i$prev_y-2); - ImageCopy($im, $im2, $i, $y_pos, $i, 0, $font_pixelwidth, $height); - - // for debug: - //ImageRectangle($im,$i,$y_pos+10,$i+$font_pixelwidth,$y_pos+70,$debug); -} - -// for debug: -//sendImage($im); - -ImageFilledRectangle($im2,0,0,$width,$height,$bg2); - -// randomly morph each character individually on x-axis -// this is where the main distortion happens -// massively improved since v1.2 -$y_chunk = 1; -$morph_factor = .1; -$morph_x = 0; -for($j=0 ; $j diff --git a/freecap/freecap_wrap.php b/freecap/freecap_wrap.php deleted file mode 100644 index 5a0f89b..0000000 --- a/freecap/freecap_wrap.php +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - - -freeCap v1.4 - www.puremango.co.uk

-"; - } else { - echo "sorry, that's not the right word, try again.
"; - } -} -?> -
- - - - - - - - -
Name:
Foo:
Bar:
If you can't read the word, click here
word above:


-
- - -- cgit v1.3