git » spf » commit cb23334

tests: Increase fuzz corpus

author Alberto Bertogli
2019-10-14 14:10:31 UTC
committer Alberto Bertogli
2019-10-14 14:33:23 UTC
parent 0dc88b790ed4fde5c563cf2d343760d3255b51f1

tests: Increase fuzz corpus

Following the recent changes, which were quite significant, I expanded
the static corpus based on the tests, and did a fuzz run.

Luckily no crashers were found.

This patch adds the new corpus, both manual and automatic, so other runs
have a good starting point.

testdata/fuzz/corpus/00411bf44dbea39f3278c2cface16398f239e7ca-12 +1 -0
testdata/fuzz/corpus/0175b61366f0bae34f123456ba2bf7154a6af668-3 +1 -0
testdata/fuzz/corpus/02c83942c0ae728b90c0a9ea44de2781e884d1bb +1 -0
testdata/fuzz/corpus/048ed20064c6350703216668dd23ea6bb5f66315 +1 -0
testdata/fuzz/corpus/04c9de854b93f2607c3fd25a5559cd3e4db9c1e8 +1 -0
testdata/fuzz/corpus/0556fcf18a86a09f6048c933b57e54cb9f2c3d20-11 +1 -0
testdata/fuzz/corpus/079ead839c297839a931cdea8b00dde0de22049a-1 +1 -0
testdata/fuzz/corpus/0845f1c9d86392058834dd993061f55fd35986a3-13 +1 -0
testdata/fuzz/corpus/0864783451aeddd592bf6840e0329f46598ed9d7-4 +1 -0
testdata/fuzz/corpus/08ba70fdee26f6942453c1420b4823fcac5821b1-1 +1 -0
testdata/fuzz/corpus/096680e0fa303a874fe940143073b3b606d11482 +1 -0
testdata/fuzz/corpus/0a2058b18f2a5fb7c02077742dc8874d015c6f53-4 +1 -0
testdata/fuzz/corpus/0a2060a21e9dfea36b635404b1dfa34ad9540063-23 +1 -0
testdata/fuzz/corpus/0a7b5cdc8eac7830d419515b47c11a0cbcf0bdd3-11 +1 -0
testdata/fuzz/corpus/0ae0ed61b45093f6121612116ac41e611b7ca57c-13 +1 -0
testdata/fuzz/corpus/0c5f76d791418c99ac7dc9148ebffe4b226037d2 +1 -0
testdata/fuzz/corpus/0e5d97173ab36db60868cd5b0ac136c4657e0c79-13 +1 -0
testdata/fuzz/corpus/0f2c4e38efb96812b9ab096bcdd0a4d295879169-2 +1 -0
testdata/fuzz/corpus/107174d48130ff0c7b15437e348ba16d8649b3dc-15 +1 -0
testdata/fuzz/corpus/1079f2c1b9f8fe829d185321520db4489ddc2a80-12 +1 -0
testdata/fuzz/corpus/1344b11657d8c0b3d0d7f6e76c0d728905615894 +1 -0
testdata/fuzz/corpus/1380aa5a0953cae35d64ff6c145b5c0a3ba84228-20 +1 -0
testdata/fuzz/corpus/13d1473f6d375e492efdf7d50e696907721bf5d1-11 +1 -0
testdata/fuzz/corpus/16524c09938afe9f06450277c89b75b6f31c3cb4-21 +1 -0
testdata/fuzz/corpus/176cbdaa14dd6b36843f55f3f52d93bacd4e5955-13 +1 -0
testdata/fuzz/corpus/182f3cb4545f1f16b4a58f54db1a64c6f94d7db8-2 +1 -0
testdata/fuzz/corpus/19530aae226c629fa64a142ade8d8edcaef2bc8a +1 -0
testdata/fuzz/corpus/198de5285b908cd3f854185f75003361dc2e735e-11 +1 -0
testdata/fuzz/corpus/19f2ae36f0113911c2f2caf4d94425ead0cf12d5-12 +1 -0
testdata/fuzz/corpus/1abffb38597e7d7ca8287c59af3a580dd94082bc-16 +1 -0
testdata/fuzz/corpus/1bc7b6182a4b27c3e44ef85bb4c3f023b5895445-10 +1 -0
testdata/fuzz/corpus/1d765a2f64502be5ce3b5af46b730baf5f571c5f-15 +1 -0
testdata/fuzz/corpus/1e7da528e7ea94d28e0b06b9ad59d3e5f0176505-13 +1 -0
testdata/fuzz/corpus/1ec151f32d7f2c3dc2a0a080076d58907c5d9936-1 +1 -0
testdata/fuzz/corpus/1fb9a5465af43f2c57e70ca491cfe4e18b057e03 +1 -0
testdata/fuzz/corpus/21295637cfffaceb4887c0f9575ae03901b496f2-13 +1 -0
testdata/fuzz/corpus/25b17e0f6aa9f73463b5a125f94427462931c764 +1 -0
testdata/fuzz/corpus/261144f593cb8f1c9efddc3ad230fc5328461f64-2 +1 -0
testdata/fuzz/corpus/26ef2aac1d567ca7f26c5ca33f35b7105854cbcd-1 +1 -0
testdata/fuzz/corpus/277313194b11458746bc9563ff021603f86026be-5 +1 -0
testdata/fuzz/corpus/28ffad3f6a424067d4d18ec1247140b443b4afcd-2 +1 -0
testdata/fuzz/corpus/29874695932eb1c2f99f7e132ae49b7344217e09-1 +1 -0
testdata/fuzz/corpus/29e28385d0d3df9278eef7e091f5eef38a77299a-14 +1 -0
testdata/fuzz/corpus/2a18fe68ef661a1fc3be98b97172e74e9921953f-12 +1 -0
testdata/fuzz/corpus/2ad9cbaa3fa9a83192bab623d544ced459390b15-17 +1 -0
testdata/fuzz/corpus/2c614e3b2bc205fc21f286208ad90f5852a3a3c0 +1 -0
testdata/fuzz/corpus/2ce45a34e51535f32ece92b6c504e2baafbd6b8f-2 +1 -0
testdata/fuzz/corpus/2e761908b14b9886eadf46c97bef3443c4f34279 +1 -0
testdata/fuzz/corpus/2e92f60a822db191e6a3696047757d19b87b442e-2 +1 -0
testdata/fuzz/corpus/2e9e26ae6d47e762073b4ee9631156e9a31fc053-10 +1 -0
testdata/fuzz/corpus/2f6dea636578de2c87a881fea9375167c07bef69-3 +1 -0
testdata/fuzz/corpus/2f90dd963ee0a06299d1a626e91c06a1e2ce426a-1 +1 -0
testdata/fuzz/corpus/3033e7b46da95858f3ed9ca0446e84028f94cbb1-14 +1 -0
testdata/fuzz/corpus/309a479231ac2f99ab6a3f5f89b9e1f6c915fe3e-9 +1 -0
testdata/fuzz/corpus/30c46fec4d22edd4d1148041840693900926fc98-2 +1 -0
testdata/fuzz/corpus/334d89acc8738699117dd37ba157f822e0ec2d17-13 +1 -0
testdata/fuzz/corpus/351f1e33b980a8c83d1d7b18a177458fd5a26dfe-14 +1 -0
testdata/fuzz/corpus/354fe722065c1cd0ab4032ee1048731740d31bcd-24 +1 -0
testdata/fuzz/corpus/377fa2d8517cb2e0b76535bc38b5d8c47d0d5283-13 +1 -0
testdata/fuzz/corpus/37d1952e25d8fe4fa79a0fe4f50b90087eb75ceb-11 +1 -0
testdata/fuzz/corpus/392cfa3036a12606981bea810dfa3e3037e1c335-1 +1 -0
testdata/fuzz/corpus/3a1ac72b5fae00487171fbbf7e8ed23e9cfa2801-4 +1 -0
testdata/fuzz/corpus/3a98f3c661d7d5f7e4fceb7738b85f493364af5f-1 +1 -0
testdata/fuzz/corpus/3acf06a7395f978f44fe56f8b3677aef69eb95c0 +1 -0
testdata/fuzz/corpus/3b32c5fe3ad89b114b25bbed3a5a1f3671946259-14 +1 -0
testdata/fuzz/corpus/3b5dab0aa1953bea3b79dce43b97a9a05b2ad778-19 +1 -0
testdata/fuzz/corpus/3bc13ee064af8ab5dae4d4c06a5daecc5a7c221b +1 -0
testdata/fuzz/corpus/3d6ae04fe800272eb51288db6176ce8f46a42bf1-1 +1 -0
testdata/fuzz/corpus/3f40bd478e8379ac87548da7017d4a4b7d30254f-11 +1 -0
testdata/fuzz/corpus/3f82cc6f3d954c07aab89004e03b634d34dbf462-14 +1 -0
testdata/fuzz/corpus/3fdb0915e3ddb50a67a2bbd242fdd8fca9809e4f +1 -0
testdata/fuzz/corpus/40008dcd4553ae76a44b29bca36088ab89c1dee2-13 +1 -0
testdata/fuzz/corpus/402e4e9ad96ea7d59a4659e12e606f05e305932c-11 +1 -0
testdata/fuzz/corpus/40c31e4805ee2897df4430511b8287f842a41737-16 +1 -0
testdata/fuzz/corpus/41236d8c1423ef106d6854b3f198ec0972ecace3-2 +1 -0
testdata/fuzz/corpus/4160602921c7d135ae47b10c4777dce5feb6b4f5-14 +1 -0
testdata/fuzz/corpus/4167d538cfc03975c215cfaf40929c93842867b6-4 +1 -0
testdata/fuzz/corpus/43b520e9d15b1406a66f15cf7049d473669d349f-12 +1 -0
testdata/fuzz/corpus/43ec78237974dab44efdd20f7fc7e17e0084eec5-3 +1 -0
testdata/fuzz/corpus/46af4d8af841946ea02faebfadfcf2e282b63e15-10 +0 -0
testdata/fuzz/corpus/46c5b1a9ad5133f42174f2474c4845fa094b0ae9 +1 -0
testdata/fuzz/corpus/46f3c6f8dbf187794e8cad8748192684ced6ebbe-1 +1 -0
testdata/fuzz/corpus/4a88aeeef6ee62498731df98ef39a181ca031d7f-1 +1 -0
testdata/fuzz/corpus/4c6d20565dc5823444f3be8860a98d4e58b8fe3d-20 +1 -0
testdata/fuzz/corpus/4df53e976f13c312ab2ec5721ebe7f42e7c5f314-14 +1 -0
testdata/fuzz/corpus/4e623b674b72c0ccb74be1a22452b492076e305b-14 +1 -0
testdata/fuzz/corpus/4f62290526f37f0c23a89db6d711726773e0a7b3-4 +1 -0
testdata/fuzz/corpus/50f714a03a1b2d022e689425d03f454d82b30c9f-1 +1 -0
testdata/fuzz/corpus/51c669411f5eb38639755018ac9f20f44e912a2c-13 +1 -0
testdata/fuzz/corpus/522509938b7f74a2c32b5ccc319b1bc9506ed08b +1 -0
testdata/fuzz/corpus/52b82bd1069487c6717cc5d7a643ef643b33efc3-12 +1 -0
testdata/fuzz/corpus/52ccacd4bf39b5336bdd46704462e94181e2757d +1 -0
testdata/fuzz/corpus/53c9798f3a3093cc4829925722019dff356aebbc +1 -0
testdata/fuzz/corpus/5594ae6ef897d6063f01e0adf41caceff607c7e2-7 +1 -0
testdata/fuzz/corpus/56628f9e0351e9b115c764ffbe94c19efaeb0389-3 +1 -0
testdata/fuzz/corpus/56a1bc1c7a3649800dbe3280f23d247155155e51 +1 -0
testdata/fuzz/corpus/56d71aa7952234711b33c3afbccc1207d73eeb14-2 +1 -0
testdata/fuzz/corpus/574189fe1098971730f7f8ba309a172e4325bc2f +1 -0
testdata/fuzz/corpus/58a9b1b0abcd5cf81ddd1a0ad4488b363729fb2b-1 +1 -0
testdata/fuzz/corpus/598f7b8e006d6633a74f959a5466655a27fbd478 +1 -0
testdata/fuzz/corpus/5c68ecddd321d7279a3b0e620317935b7d4e8ce1-2 +1 -0
testdata/fuzz/corpus/5fdf397505b4fc0d3761721f15489860dd65b2b6-1 +1 -0
testdata/fuzz/corpus/60658aaa3f93cd568bdf81690c1c0d3640d124be +1 -0
testdata/fuzz/corpus/60b77bed79cf2f081d781270f6c64500c65f2141-1 +1 -0
testdata/fuzz/corpus/60f915049f6f1a9cc5ac4ef693fa3e9094321cc4-13 +1 -0
testdata/fuzz/corpus/61c4b104c84b6d8d909e3b0290c6af0c12388bf3-1 +1 -0
testdata/fuzz/corpus/6273611346aa5c20c3ce44cae49017f9124aa5de-12 +1 -0
testdata/fuzz/corpus/632efcbdcb1acc95d5438c0465d1974675f9529c-15 +1 -0
testdata/fuzz/corpus/63d6872579dc76522b1003f2a21320d38d953410-13 +1 -0
testdata/fuzz/corpus/66db2560a9ac8dac4bf979cb47812b01decf06eb +1 -0
testdata/fuzz/corpus/66e8dd891c16ec4c27e041b82c3115a92ad5832a +1 -0
testdata/fuzz/corpus/67e6e2e608167be0596021157131b64ad7b91da2-2 +1 -0
testdata/fuzz/corpus/6896ec67b390b407509284648c9aa7c474a04039-8 +1 -0
testdata/fuzz/corpus/689da1b392dfdb3776bb8ffa04f5d731638e92f3-3 +1 -0
testdata/fuzz/corpus/6a96f7df5daf601f47990aef577392392f4a664a-4 +1 -0
testdata/fuzz/corpus/6d7bb009e8728bd239a22e5319974b3a5b87614e-1 +1 -0
testdata/fuzz/corpus/6d9c90e1d0e3649b67945b2d0406f339540cf98c-12 +1 -0
testdata/fuzz/corpus/6ef264dc7512c4232e16d8db5eb28eb1b0250d4d-16 +1 -0
testdata/fuzz/corpus/72640f46c1303246ecca69b3e6866c471f32645b +1 -0
testdata/fuzz/corpus/72dd6c39431c5518730e9d9484962bc778fb2544-22 +1 -0
testdata/fuzz/corpus/73463692358cdf893e7cf552b3b2b5e311b85305 +1 -0
testdata/fuzz/corpus/737ebd2b89624cd21e3f0721b456355588f4ece8-12 +1 -0
testdata/fuzz/corpus/739f18ee4881e1138630b0d7ffadc8d041040476-13 +1 -0
testdata/fuzz/corpus/73e1afe5697623bdcfe1211204f7e0fb951a4c32-6 +1 -0
testdata/fuzz/corpus/74391ecf9d5baefd2cd7535363ced8e5cafdfb4a-12 +1 -0
testdata/fuzz/corpus/755e57e00fb8fe9343195c109153983b458c48f1-15 +1 -0
testdata/fuzz/corpus/756598fcdae09b8a543f39a9dd1aee7468ec07bc-11 +1 -0
testdata/fuzz/corpus/75a64f372534aebaf3838c8cab4260113be8fa08-7 +1 -0
testdata/fuzz/corpus/7652ffe29e111d0db9410539df17d79bc238208c-13 +1 -0
testdata/fuzz/corpus/777410981fb83bfc115b9d73658384744ca5b9aa-13 +1 -0
testdata/fuzz/corpus/77adc4c141f7dd876302adc5983bbde56337d906-1 +1 -0
testdata/fuzz/corpus/7949acda013fef8a8ac8159d6956f06da5498bb8-1 +1 -0
testdata/fuzz/corpus/7b240b945ea1c29125653542c1f293550fd3efea-2 +1 -0
testdata/fuzz/corpus/7bef4f9bf55a5b438de0d3676f7a4a06897999cf-12 +1 -0
testdata/fuzz/corpus/7c47587b4bbec9f37bf2ffd00c146a531e8ece00-2 +1 -0
testdata/fuzz/corpus/7f5b9fea2aabe47c7d5fa23f72a3d6f67967c789-1 +1 -0
testdata/fuzz/corpus/7f94a20a3d14ae96187abe57face44d86ff654d1-12 +1 -0
testdata/fuzz/corpus/80381ec0dd66440317fa79bd0ab362ba82719e65-7 +1 -0
testdata/fuzz/corpus/80ac09e7f0993b0086e842b1684a3cf6b7ed2dae-14 +1 -0
testdata/fuzz/corpus/828c73a6223be952748d5fdb5246ddc8d1072236-3 +1 -0
testdata/fuzz/corpus/837dce66ca9aaa4d4995ac40d00fe066c2a1c4f8 +1 -0
testdata/fuzz/corpus/838423f0949b7ed6bb1656550dbfe62c6ca7f196 +1 -0
testdata/fuzz/corpus/84ad86ae4a2dc2f61c974f4de865f88b42f8eacc-10 +1 -0
testdata/fuzz/corpus/859199c9754e10f22cd1e8841ab2a80c75566cf6 +1 -0
testdata/fuzz/corpus/85c7a4d79af67f0a01b9a00a52be6d4d5279ac55-5 +1 -0
testdata/fuzz/corpus/88165e348fbb0dddac43be4d6625224722f87133 +1 -0
testdata/fuzz/corpus/8927772091f444bee910b24247e9ff25c95d58fb-12 +1 -0
testdata/fuzz/corpus/8ac59d1ab0b3a5fac14b352f92584f4dea4a9b2e-19 +1 -0
testdata/fuzz/corpus/8b29df6acaf2fcc4f29d3b709f85c3cb17717867 +1 -0
testdata/fuzz/corpus/8b2bb8cd4f6eb4a879d359d84345308003e3362b-14 +1 -0
testdata/fuzz/corpus/8c4f9dfe76423ff4683bdd5058779d9101f24b79-15 +1 -0
testdata/fuzz/corpus/8cebd1fdd0164acca4c62330f79f3c02d9a60763-2 +1 -0
testdata/fuzz/corpus/8d029147e2084816fb319802ea77b01efd391b54-13 +1 -0
testdata/fuzz/corpus/8e053980cb3e6f47e74cc8f2bdeae555e8fea559-3 +1 -0
testdata/fuzz/corpus/8e59eb0d01a975d66f10113cdbaa95304313e420-12 +1 -0
testdata/fuzz/corpus/9164a7c22279e6b8ff72aea10563c56aa2b13f88 +1 -0
testdata/fuzz/corpus/91c2784bafbbc998e0bd22a4285540852ad966ed +1 -0
testdata/fuzz/corpus/92180f784e583d9201c52bcd251686c1ce420493-13 +1 -0
testdata/fuzz/corpus/923156e1b572d3a1a88c85b6f4e0001658257dbe-1 +1 -0
testdata/fuzz/corpus/9362b24013a5f29755c8140c47724dce20d8aa92 +1 -0
testdata/fuzz/corpus/9625cf271d4bea92494cc6c08d37605675fdf9fd-1 +1 -0
testdata/fuzz/corpus/97c03960e91dde1ab193ea2d82ff742fcc3ddbad-1 +1 -0
testdata/fuzz/corpus/97d3dd37d1f19b7bd31b1eac4a6257dba655c41c-1 +1 -0
testdata/fuzz/corpus/97d69f2939425aec568d67ad8617d134cd9d2965 +1 -0
testdata/fuzz/corpus/98cc679b25e4a323f7023b3e53fbf770030528c5-4 +1 -0
testdata/fuzz/corpus/9aaf904c7427b850ea7a57316cf41c4e5d34a1a5-12 +1 -0
testdata/fuzz/corpus/9abcdf6390b0613fff3e3decb747d6e93a89a36a +1 -0
testdata/fuzz/corpus/9cf1b9b09464e4499ed3dcb2d9140f85bc1a9ca1-13 +1 -0
testdata/fuzz/corpus/9e319cac94086116535095207d04b5c224e59526-15 +1 -0
testdata/fuzz/corpus/9f4f35b562b1335d5226eb15f579b40f78902b08 +1 -0
testdata/fuzz/corpus/9f971c708dcddd95fad64e2cce4b5a3beff74e55-16 +1 -0
testdata/fuzz/corpus/a1c703c19dcb0dd1393a1aa550dab9d22064411a-13 +1 -0
testdata/fuzz/corpus/a4501217ce3dd66c7722843d546ac04d8157d655-5 +1 -0
testdata/fuzz/corpus/a5555f3e52f2a50dc83da59781278cab8af8f43a-1 +1 -0
testdata/fuzz/corpus/a7446b3e3a4aed6193665967f0857bc9a62a3715-3 +1 -0
testdata/fuzz/corpus/a8865f15dc42b146da6aad2fc9f74eae1dd255fd-19 +1 -0
testdata/fuzz/corpus/a911eff5c6cd79e98ead8dfabd2d4e6f468e6837-2 +1 -0
testdata/fuzz/corpus/a93f5beaa58d9a1a6524ef74a724d1af206a3bfa +1 -0
testdata/fuzz/corpus/a9895ef31ad26725518daeeaf172dd8434b7b926 +1 -0
testdata/fuzz/corpus/a9f36515a6f362c384c12c7633f7d940204833a7 +1 -0
testdata/fuzz/corpus/aa540d18eefc008c3114d2b93278edc1be1ff1f3-1 +1 -0
testdata/fuzz/corpus/aa6c9169f459f167c749030c9d1987afd3d6cd74-12 +1 -0
testdata/fuzz/corpus/ab1143a7650029d54d16c3086123cf8c62ae0e03-14 +1 -0
testdata/fuzz/corpus/ac6f486856003dabf941a7b559667829730f4b85 +1 -0
testdata/fuzz/corpus/acca12db014f6aea3028a84f6c5866f647b2d4cc +1 -0
testdata/fuzz/corpus/accc8bc507abbfb1ec387e67d264bd2663eebfb7 +1 -0
testdata/fuzz/corpus/acd182846170dcef1c7546d4ab6a98490796f113-2 +1 -0
testdata/fuzz/corpus/ad152c49557a64647f046f959dcc68bf93658dc3 +1 -0
testdata/fuzz/corpus/ae8ea51dda8860b90e3f7caae055efc79af00d1d-2 +1 -0
testdata/fuzz/corpus/b0e49cd5a0eea69e8e80d9e712acbd263cbf0568-13 +1 -0
testdata/fuzz/corpus/b0f5dc28d923c125a2f3eb76f7502201ace60e7c-12 +1 -0
testdata/fuzz/corpus/b100873d47c1870d8711f29c28431fea30c4ec4c-1 +1 -0
testdata/fuzz/corpus/b145fe0a881625a35bab0b433476a0c021165c61-1 +1 -0
testdata/fuzz/corpus/b15a623eeb971a4e7734a44a7e8ed23e87963af4-1 +1 -0
testdata/fuzz/corpus/b17aa7e8ad6c575f52c22192fc3fd1eec24e997c-16 +1 -0
testdata/fuzz/corpus/b2ce5c9c42e721bded3c31f0438bf9d366636ece-2 +1 -0
testdata/fuzz/corpus/b2d7f31602f04aa2ab5287fd1a47262719c8b66e +1 -0
testdata/fuzz/corpus/b307e1380f2f39d76abefed30d6272c44624f8b7-4 +1 -0
testdata/fuzz/corpus/b36467ce1bf29b7c3258c6e0ea1987c5e0989ac4-13 +1 -0
testdata/fuzz/corpus/b488275d23ef85adb645e037d8f7524ac51b3e5f +1 -0
testdata/fuzz/corpus/b5a98679ef576a7410544e1e367ecd869cbc56ee-7 +1 -0
testdata/fuzz/corpus/b6507f7406c96d99dd64e849129d39069c85f9a9-11 +1 -0
testdata/fuzz/corpus/b817cf09acdda44e8d910c19dd59a705ea223067-14 +1 -0
testdata/fuzz/corpus/b8855d0c786eba4683fbf8cde3459b8a9101d2ea-8 +1 -0
testdata/fuzz/corpus/b8d0e747da40b2501b1c2c39ed3bcd1e9c7c46d8-1 +1 -0
testdata/fuzz/corpus/bc54f7f235fbe4eb55a7066dfe301b396bc1c634 +1 -0
testdata/fuzz/corpus/bd74e6de533aa3f9d3a9ff0694639bac7cef1a02-3 +1 -0
testdata/fuzz/corpus/bf8b39b3f7dc8b62718454e41a18b3fdf166b52a-14 +1 -0
testdata/fuzz/corpus/c1210ffd398a720b89fa9b2fd7d071c759848ccc-13 +1 -0
testdata/fuzz/corpus/c19da7619ae805156926cde722e4753648e555b4-1 +1 -0
testdata/fuzz/corpus/c2672e5a51b373fa65f8edf478576d4cdbe5a09b-1 +1 -0
testdata/fuzz/corpus/c4f22db76ae464b5239fb7761091382756c3f3b6 +1 -0
testdata/fuzz/corpus/c58d87a54c389bab92d1f4a209adc75523fc7574-2 +1 -0
testdata/fuzz/corpus/c642abd702594b1bef94016873d29be7c3426428 +1 -0
testdata/fuzz/corpus/c6e2ae81a2d096b2e9faf154beb78f8aaf715cff +1 -0
testdata/fuzz/corpus/c891ebdca240564cd6be85db7ec4f2419cca1560-1 +1 -0
testdata/fuzz/corpus/c8d66f4be86f0a428754e8150fae408f21421bb8-13 +1 -0
testdata/fuzz/corpus/c8f75ab19304bff1037246dfbafe8e5903bb90cc-2 +1 -0
testdata/fuzz/corpus/c960d3112bff1a12d9bfe4f7e6ea1dd8c114e7d6 +1 -0
testdata/fuzz/corpus/c989438a20e09ca08d8d0a8bc3f3ff6e788aec7b-12 +1 -0
testdata/fuzz/corpus/ca425f5a4795eda3ba095d08f2fed2b9b56e294d +1 -0
testdata/fuzz/corpus/cb2c25e688500463cbd57cccaf4651bd985b411e-14 +1 -0
testdata/fuzz/corpus/cb9c9d95ff6e8ad02f6dfa35614c56ee3ef8e70b +1 -0
testdata/fuzz/corpus/cc6bc932909f1589479e1129791402e99ffe2b98-11 +1 -0
testdata/fuzz/corpus/cc9dc2f9d4124f385fb9589c57d26388ac1d584e-11 +1 -0
testdata/fuzz/corpus/cdd60476f4ef91a97ff0161196731409d8dc4187-15 +1 -0
testdata/fuzz/corpus/ce2c5d5257e32149064eb16f95ca854373d7bae3-12 +1 -0
testdata/fuzz/corpus/ce47ddf5b00c777dbf2214a2d8ac4579127464d0 +1 -0
testdata/fuzz/corpus/ce5296fce5bbc097e72fea0331519a92290a56be-13 +1 -0
testdata/fuzz/corpus/ce5b33baf137d522804df44ba49054ed0c99d86e +1 -0
testdata/fuzz/corpus/ce91e7bf355c66eb7b54bd9eec6f9c3e1128abfa +1 -0
testdata/fuzz/corpus/cee815b2b87629959c5aaf8d9529de4302365eaf-11 +1 -0
testdata/fuzz/corpus/d127e98987abe4687f4aac11b2405cf2028d9d7b-6 +1 -0
testdata/fuzz/corpus/d1f256c13fc6d25a1ce60bee676bdc6dbf370b17-14 +1 -0
testdata/fuzz/corpus/d4f0fe1f081eee99d09ec18d0320e49421d796be-2 +1 -0
testdata/fuzz/corpus/d5032b820a2b0b9e853b55878217fa9d262a314f-13 +1 -0
testdata/fuzz/corpus/d50ae4884ceef9773629d9dda6a742e631fd4b04-1 +1 -0
testdata/fuzz/corpus/d72da001152934c26ffdc5f09b8e6930a6029bf2 +1 -0
testdata/fuzz/corpus/d77c09dca3ad4265127e3cb9ab223a51af746e2f-3 +1 -0
testdata/fuzz/corpus/dbf895f600893e37727da6399b4285606db5f526-12 +1 -0
testdata/fuzz/corpus/dc0b19445201ed2c3996cdc6f3c244ee9f652f35-1 +1 -0
testdata/fuzz/corpus/dda2d834936fe89fbd3f55adc62f793c19b5bb9c-1 +1 -0
testdata/fuzz/corpus/de07275958226e06cd1a914c7f9b9016b61c5b1f-12 +1 -0
testdata/fuzz/corpus/de4785b5ee386672dbf8e5db8273e0351ea1862b-14 +1 -0
testdata/fuzz/corpus/de933a63454be499e4e9bed43e408d3d8e1ff567-18 +1 -0
testdata/fuzz/corpus/ded54786ddda6dc0f3ffaf5a73c619c3ff8e4b15-10 +1 -0
testdata/fuzz/corpus/dfe0b41c561174c2b49287ef075144ceef8da296-6 +1 -0
testdata/fuzz/corpus/e02efe936c6ee8076f09724e5bb9e561c953300e-12 +1 -0
testdata/fuzz/corpus/e10b4f7eaaad2300375a565a8dae9f2e85608a52-13 +1 -0
testdata/fuzz/corpus/e28579d8a072e6615a51a0112bee851dc3a1f5fd-4 +1 -0
testdata/fuzz/corpus/e2d874886a559a516efd5dc3a169334c7a963b30-12 +1 -0
testdata/fuzz/corpus/e3e07997d1dc92146f6984ff5720fa16894e7c53-9 +1 -0
testdata/fuzz/corpus/e41fcf365302845c2340ccb398af2cfefb43f232-13 +1 -0
testdata/fuzz/corpus/e57744a0dd15293f65d65428a78b2ee3f130d009 +1 -0
testdata/fuzz/corpus/e5880258d09616bbddf50349c7f55002c79b0022-3 +1 -0
testdata/fuzz/corpus/e68c75a01a4dfa8bbba43e271e396726d72c2f5b +1 -0
testdata/fuzz/corpus/e69204559a621f21dc8f0e7002fd7fca9a7b8ae8-12 +1 -0
testdata/fuzz/corpus/e73a0dbc0b873c3e1ddf99f0ac22927b1163e7c8-14 +1 -0
testdata/fuzz/corpus/e93a4f40a1901c685ac5a409a1f07ba714ef956c-2 +1 -0
testdata/fuzz/corpus/e964873ffd42a21f02c1b2248873c0a901365005-1 +1 -0
testdata/fuzz/corpus/ea5be69cc8b6644519c5a167ca753a863b757097 +1 -0
testdata/fuzz/corpus/ec0f6eace689ed6111acd7ec285057da01a1eb21-18 +1 -0
testdata/fuzz/corpus/ec8282bd3e0bf237005a5a65e6bf5bffbf51e758-1 +1 -0
testdata/fuzz/corpus/ec93b5d52903ed882f9f6f24d6ec969012ed55ff-15 +1 -0
testdata/fuzz/corpus/ed29237e59b78657edc357bf1fd4460a66268a5e-5 +1 -0
testdata/fuzz/corpus/ee703a3c97844bd923f94fcee3f4b1653c10fb6d-14 +1 -0
testdata/fuzz/corpus/ee8656006a06959c1879616effb85a634b0aca13 +1 -0
testdata/fuzz/corpus/eebf4b0d9b6cc26f1e7ee704bb832dcc7647ac8c-18 +1 -0
testdata/fuzz/corpus/efd13ba66006cb10e54fd5c8a2992aa935a8756e +1 -0
testdata/fuzz/corpus/f00d320792f2005cc22836f5dffde0be97502329-13 +1 -0
testdata/fuzz/corpus/f0edc684d8e8f6bab6d61c4219dbe9d58d39d326-17 +1 -0
testdata/fuzz/corpus/f2ea57ec6f67baa4734129213423b9ebb4cde80b-1 +1 -0
testdata/fuzz/corpus/f350da396279e5e30cf92a6d3204c5220a02ef0a-9 +1 -0
testdata/fuzz/corpus/f37f1e713b1f67e3482d7e866517f016e1a13ce0-10 +1 -0
testdata/fuzz/corpus/f3c307e9e0eaf6bd44a3ab6737ee11f342866326-15 +1 -0
testdata/fuzz/corpus/f40589b11b7e03c9d880bd69b76e01e27c743df3-16 +1 -0
testdata/fuzz/corpus/f57ba6df08bfc3da035f8333e18bc446ba1f0e2d-1 +1 -0
testdata/fuzz/corpus/f8a1991053a5a58d92e38049974f307b888d6124 +1 -0
testdata/fuzz/corpus/f8e2610fa172fcf57c5a78abc250c624ea258abd-2 +1 -0
testdata/fuzz/corpus/f97b07022630b9bb9d443021f67c6616a5e2499b-3 +1 -0
testdata/fuzz/corpus/fab1282ee7602b9bc7dd8814723a391dc902ad0d-12 +1 -0
testdata/fuzz/corpus/fc7ec2e1564e22897591d02e3abc43245cd46ba1-6 +1 -0
testdata/fuzz/corpus/fc9b2b87a881c97370779482229c8b6e56ff43f0-3 +1 -0
testdata/fuzz/corpus/fd8c9d87b2d24a6e2d677bc551b32e3fd26cc0a8-18 +1 -0
testdata/fuzz/corpus/fe0cfa994f142b9dbbcf323d29affdd09798c1ab +1 -0
testdata/fuzz/corpus/fe256c829f42896f75caaac59f3344d1657770a0-3 +1 -0
testdata/fuzz/corpus/t-044 +1 -0
testdata/fuzz/corpus/t-045 +1 -0
testdata/fuzz/corpus/t-046 +1 -0
testdata/fuzz/corpus/t-047 +1 -0
testdata/fuzz/corpus/t-048 +1 -0
testdata/fuzz/corpus/t-049 +1 -0
testdata/fuzz/corpus/t-050 +1 -0
testdata/fuzz/corpus/t-051 +1 -0
testdata/fuzz/corpus/t-052 +1 -0
testdata/fuzz/corpus/t-053 +1 -0
testdata/fuzz/corpus/t-054 +1 -0
testdata/fuzz/corpus/t-055 +1 -0
testdata/fuzz/corpus/t-056 +1 -0
testdata/fuzz/corpus/t-057 +1 -0
testdata/fuzz/corpus/t-058 +1 -0
testdata/fuzz/corpus/t-059 +1 -0
testdata/fuzz/corpus/t-060 +1 -0
testdata/fuzz/corpus/t-061 +1 -0
testdata/fuzz/corpus/t-062 +1 -0
testdata/fuzz/corpus/t-063 +1 -0
testdata/fuzz/corpus/t-064 +1 -0
testdata/fuzz/corpus/t-065 +1 -0
testdata/fuzz/corpus/t-066 +1 -0
testdata/fuzz/corpus/t-067 +1 -0
testdata/fuzz/corpus/t-068 +1 -0
testdata/fuzz/corpus/t-069 +1 -0
testdata/fuzz/corpus/t-070 +1 -0
testdata/fuzz/corpus/t-071 +1 -0
testdata/fuzz/corpus/t-072 +1 -0
testdata/fuzz/corpus/t-073 +1 -0
testdata/fuzz/corpus/t-074 +1 -0
testdata/fuzz/corpus/t-075 +1 -0
testdata/fuzz/corpus/t-076 +1 -0
testdata/fuzz/corpus/t-077 +1 -0
testdata/fuzz/corpus/t-078 +1 -0
testdata/fuzz/corpus/t-079 +1 -0
testdata/fuzz/corpus/t-080 +1 -0
testdata/fuzz/corpus/t-081 +1 -0
testdata/fuzz/corpus/t-082 +1 -0
testdata/fuzz/corpus/t-083 +1 -0
testdata/fuzz/corpus/t-084 +1 -0
testdata/fuzz/corpus/t-085 +1 -0
testdata/fuzz/corpus/t-086 +1 -0
testdata/fuzz/corpus/t-087 +1 -0
testdata/fuzz/corpus/t-088 +1 -0
testdata/fuzz/corpus/t-089 +1 -0
testdata/fuzz/corpus/t-090 +1 -0
testdata/fuzz/corpus/t-091 +1 -0
testdata/fuzz/corpus/t-092 +1 -0
testdata/fuzz/corpus/t-093 +1 -0
testdata/fuzz/corpus/t-094 +1 -0
testdata/fuzz/corpus/t-095 +1 -0
testdata/fuzz/corpus/t-096 +1 -0
testdata/fuzz/corpus/t-097 +1 -0
testdata/fuzz/corpus/t-098 +1 -0
testdata/fuzz/corpus/t-099 +1 -0
testdata/fuzz/corpus/t-100 +1 -0
testdata/fuzz/corpus/t-101 +1 -0
testdata/fuzz/corpus/t-102 +1 -0
testdata/fuzz/corpus/t-103 +1 -0
testdata/fuzz/corpus/t-104 +1 -0
testdata/fuzz/corpus/t-105 +1 -0
testdata/fuzz/corpus/t-106 +1 -0
testdata/fuzz/corpus/t-107 +1 -0
testdata/fuzz/corpus/t-108 +1 -0
testdata/fuzz/corpus/t-109 +1 -0
testdata/fuzz/corpus/t-110 +1 -0
testdata/fuzz/corpus/t-111 +1 -0
testdata/fuzz/corpus/t-112 +1 -0
testdata/fuzz/corpus/t-113 +1 -0
testdata/fuzz/corpus/t-114 +1 -0
testdata/fuzz/corpus/t-115 +1 -0
testdata/fuzz/corpus/t-116 +1 -0
testdata/fuzz/corpus/t-117 +1 -0
testdata/fuzz/corpus/t-118 +1 -0
testdata/fuzz/corpus/t-119 +1 -0
testdata/fuzz/corpus/t-120 +1 -0
testdata/fuzz/corpus/t-121 +1 -0
testdata/fuzz/corpus/t-122 +1 -0
testdata/fuzz/corpus/t-123 +1 -0
testdata/fuzz/corpus/t-124 +1 -0
testdata/fuzz/corpus/t-125 +1 -0
testdata/fuzz/corpus/t-126 +1 -0
testdata/fuzz/corpus/t-127 +1 -0
testdata/fuzz/corpus/t-128 +1 -0
testdata/fuzz/corpus/t-129 +1 -0
testdata/fuzz/corpus/t-130 +1 -0
testdata/fuzz/corpus/t-131 +1 -0
testdata/fuzz/corpus/t-132 +1 -0
testdata/fuzz/corpus/t-133 +1 -0
testdata/fuzz/corpus/t-134 +1 -0
testdata/fuzz/corpus/t-135 +1 -0
testdata/fuzz/corpus/t-136 +1 -0
testdata/fuzz/corpus/t-137 +1 -0
testdata/fuzz/corpus/t-138 +1 -0
testdata/fuzz/corpus/t-139 +1 -0
testdata/fuzz/corpus/t-140 +1 -0
testdata/fuzz/corpus/t-141 +1 -0
testdata/fuzz/corpus/t-142 +1 -0
testdata/fuzz/corpus/t-143 +1 -0
testdata/fuzz/corpus/t-144 +1 -0
testdata/fuzz/corpus/t-145 +1 -0
testdata/fuzz/corpus/t-146 +1 -0
testdata/fuzz/corpus/t-147 +1 -0
testdata/fuzz/corpus/t-148 +1 -0
testdata/fuzz/corpus/t-149 +1 -0
testdata/fuzz/corpus/t-150 +1 -0
testdata/fuzz/corpus/t-151 +1 -0
testdata/fuzz/corpus/t-152 +1 -0
testdata/fuzz/corpus/t-153 +1 -0
testdata/fuzz/corpus/t-154 +1 -0
testdata/fuzz/corpus/t-155 +1 -0
testdata/fuzz/corpus/t-156 +1 -0
testdata/fuzz/corpus/t-157 +1 -0
testdata/fuzz/corpus/t-158 +1 -0
testdata/fuzz/corpus/t-159 +1 -0
testdata/fuzz/corpus/t-160 +1 -0
testdata/fuzz/corpus/t-161 +1 -0
testdata/fuzz/corpus/t-162 +1 -0
testdata/fuzz/corpus/t-163 +1 -0
testdata/fuzz/corpus/t-164 +1 -0
testdata/fuzz/corpus/t-165 +1 -0
testdata/fuzz/corpus/t-166 +1 -0
testdata/fuzz/corpus/t-167 +1 -0
testdata/fuzz/corpus/t-168 +1 -0
testdata/fuzz/corpus/t-169 +1 -0
testdata/fuzz/corpus/t-170 +1 -0
testdata/fuzz/corpus/t-171 +1 -0
testdata/fuzz/corpus/t-172 +1 -0
testdata/fuzz/corpus/t-173 +1 -0
testdata/fuzz/corpus/t-174 +1 -0
testdata/fuzz/corpus/t-175 +1 -0
testdata/fuzz/corpus/t-176 +1 -0
testdata/fuzz/corpus/t-177 +1 -0
testdata/fuzz/corpus/t-178 +1 -0
testdata/fuzz/corpus/t-179 +1 -0
testdata/fuzz/corpus/t-180 +1 -0
testdata/fuzz/corpus/t-181 +1 -0
testdata/fuzz/corpus/t-182 +1 -0
testdata/fuzz/corpus/t-183 +1 -0
testdata/fuzz/corpus/t-184 +1 -0
testdata/fuzz/corpus/t-185 +1 -0
testdata/fuzz/corpus/t-186 +1 -0
testdata/fuzz/corpus/t-187 +1 -0
testdata/fuzz/corpus/t-188 +1 -0
testdata/fuzz/corpus/t-189 +1 -0
testdata/fuzz/corpus/t-190 +1 -0
testdata/fuzz/corpus/t-191 +1 -0
testdata/fuzz/corpus/t-192 +1 -0
testdata/fuzz/corpus/t-193 +1 -0
testdata/fuzz/corpus/t-194 +1 -0
testdata/fuzz/corpus/t-195 +1 -0
testdata/fuzz/corpus/t-196 +1 -0
testdata/fuzz/corpus/t-197 +1 -0
testdata/fuzz/corpus/t-198 +1 -0
testdata/fuzz/corpus/t-199 +1 -0
testdata/fuzz/corpus/t-200 +1 -0
testdata/fuzz/corpus/t-201 +1 -0
testdata/fuzz/corpus/t-202 +1 -0
testdata/fuzz/corpus/t-203 +1 -0
testdata/fuzz/corpus/t-204 +1 -0
testdata/fuzz/corpus/t-205 +1 -0
testdata/fuzz/corpus/t-206 +1 -0
testdata/fuzz/corpus/t-207 +1 -0
testdata/fuzz/corpus/t-208 +1 -0
testdata/fuzz/corpus/t-209 +1 -0
testdata/fuzz/corpus/t-210 +1 -0
testdata/fuzz/corpus/t-211 +1 -0
testdata/fuzz/corpus/t-212 +1 -0
testdata/fuzz/corpus/t-213 +1 -0
testdata/fuzz/corpus/t-214 +1 -0
testdata/fuzz/corpus/t-215 +1 -0
testdata/fuzz/corpus/t-216 +1 -0
testdata/fuzz/corpus/t-217 +1 -0
testdata/fuzz/corpus/t-218 +1 -0
testdata/fuzz/corpus/t-219 +1 -0
testdata/fuzz/corpus/t-220 +1 -0
testdata/fuzz/corpus/t-221 +1 -0
testdata/fuzz/corpus/t-222 +1 -0
testdata/fuzz/corpus/t-223 +1 -0
testdata/fuzz/corpus/t-224 +1 -0
testdata/fuzz/corpus/t-225 +1 -0
testdata/fuzz/corpus/t-226 +1 -0
testdata/fuzz/corpus/t-227 +1 -0
testdata/fuzz/corpus/t-228 +1 -0
testdata/fuzz/corpus/t-229 +1 -0
testdata/fuzz/corpus/t-230 +1 -0
testdata/fuzz/corpus/t-231 +1 -0
testdata/fuzz/corpus/t-232 +1 -0
testdata/fuzz/corpus/t-233 +1 -0
testdata/fuzz/corpus/t-234 +1 -0
testdata/fuzz/corpus/t-235 +1 -0
testdata/fuzz/corpus/t-236 +1 -0
testdata/fuzz/corpus/t-237 +1 -0
testdata/fuzz/corpus/t-238 +1 -0
testdata/fuzz/corpus/t-239 +1 -0
testdata/fuzz/corpus/t-240 +1 -0
testdata/fuzz/corpus/t-241 +1 -0
testdata/fuzz/corpus/t-242 +1 -0
testdata/fuzz/corpus/t-243 +1 -0
testdata/fuzz/corpus/t-244 +1 -0
testdata/fuzz/corpus/t-245 +1 -0
testdata/fuzz/corpus/t-246 +1 -0
testdata/fuzz/corpus/t-247 +1 -0

diff --git a/testdata/fuzz/corpus/00411bf44dbea39f3278c2cface16398f239e7ca-12 b/testdata/fuzz/corpus/00411bf44dbea39f3278c2cface16398f239e7ca-12
new file mode 100644
index 0000000..d4e4022
--- /dev/null
+++ b/testdata/fuzz/corpus/00411bf44dbea39f3278c2cface16398f239e7ca-12
@@ -0,0 +1 @@
+v=spf1 ip6:1:b:6:1:b:6:1:0/1 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/0175b61366f0bae34f123456ba2bf7154a6af668-3 b/testdata/fuzz/corpus/0175b61366f0bae34f123456ba2bf7154a6af668-3
new file mode 100644
index 0000000..369778f
--- /dev/null
+++ b/testdata/fuzz/corpus/0175b61366f0bae34f123456ba2bf7154a6af668-3
@@ -0,0 +1 @@
+v=spf1 mx:%{I} -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/02c83942c0ae728b90c0a9ea44de2781e884d1bb b/testdata/fuzz/corpus/02c83942c0ae728b90c0a9ea44de2781e884d1bb
new file mode 100644
index 0000000..6cebf8a
--- /dev/null
+++ b/testdata/fuzz/corpus/02c83942c0ae728b90c0a9ea44de2781e884d1bb
@@ -0,0 +1 @@
+v=spf1 a:%{o0}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/048ed20064c6350703216668dd23ea6bb5f66315 b/testdata/fuzz/corpus/048ed20064c6350703216668dd23ea6bb5f66315
new file mode 100644
index 0000000..9ae669b
--- /dev/null
+++ b/testdata/fuzz/corpus/048ed20064c6350703216668dd23ea6bb5f66315
@@ -0,0 +1 @@
+v=spf1 ip4:1.1.1.1/0
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/04c9de854b93f2607c3fd25a5559cd3e4db9c1e8 b/testdata/fuzz/corpus/04c9de854b93f2607c3fd25a5559cd3e4db9c1e8
new file mode 100644
index 0000000..a4e0ca3
--- /dev/null
+++ b/testdata/fuzz/corpus/04c9de854b93f2607c3fd25a5559cd3e4db9c1e8
@@ -0,0 +1 @@
+v=spf1 exists:%{I_}%{O_}%{l-}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/0556fcf18a86a09f6048c933b57e54cb9f2c3d20-11 b/testdata/fuzz/corpus/0556fcf18a86a09f6048c933b57e54cb9f2c3d20-11
new file mode 100644
index 0000000..3099b6e
--- /dev/null
+++ b/testdata/fuzz/corpus/0556fcf18a86a09f6048c933b57e54cb9f2c3d20-11
@@ -0,0 +1 @@
+v=spf1 ip6:::1 ip6:Cafe:Babe:0:: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/079ead839c297839a931cdea8b00dde0de22049a-1 b/testdata/fuzz/corpus/079ead839c297839a931cdea8b00dde0de22049a-1
new file mode 100644
index 0000000..6652398
--- /dev/null
+++ b/testdata/fuzz/corpus/079ead839c297839a931cdea8b00dde0de22049a-1
@@ -0,0 +1 @@
+v=spf1 mx:%{{.%{i} -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/0845f1c9d86392058834dd993061f55fd35986a3-13 b/testdata/fuzz/corpus/0845f1c9d86392058834dd993061f55fd35986a3-13
new file mode 100644
index 0000000..88668b7
--- /dev/null
+++ b/testdata/fuzz/corpus/0845f1c9d86392058834dd993061f55fd35986a3-13
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4 ip6:::/4 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/0864783451aeddd592bf6840e0329f46598ed9d7-4 b/testdata/fuzz/corpus/0864783451aeddd592bf6840e0329f46598ed9d7-4
new file mode 100644
index 0000000..f788697
--- /dev/null
+++ b/testdata/fuzz/corpus/0864783451aeddd592bf6840e0329f46598ed9d7-4
@@ -0,0 +1 @@
+v=spf1 ip6:6:1:8:1::6:1:8:0.
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/08ba70fdee26f6942453c1420b4823fcac5821b1-1 b/testdata/fuzz/corpus/08ba70fdee26f6942453c1420b4823fcac5821b1-1
new file mode 100644
index 0000000..246a655
--- /dev/null
+++ b/testdata/fuzz/corpus/08ba70fdee26f6942453c1420b4823fcac5821b1-1
@@ -0,0 +1 @@
+v=spf1 ip4:1.71160442
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/096680e0fa303a874fe940143073b3b606d11482 b/testdata/fuzz/corpus/096680e0fa303a874fe940143073b3b606d11482
new file mode 100644
index 0000000..22575f3
--- /dev/null
+++ b/testdata/fuzz/corpus/096680e0fa303a874fe940143073b3b606d11482
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4:
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/0a2058b18f2a5fb7c02077742dc8874d015c6f53-4 b/testdata/fuzz/corpus/0a2058b18f2a5fb7c02077742dc8874d015c6f53-4
new file mode 100644
index 0000000..431ff71
--- /dev/null
+++ b/testdata/fuzz/corpus/0a2058b18f2a5fb7c02077742dc8874d015c6f53-4
@@ -0,0 +1 @@
+v=spf1 redirect=%{d0027755927159263581}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/0a2060a21e9dfea36b635404b1dfa34ad9540063-23 b/testdata/fuzz/corpus/0a2060a21e9dfea36b635404b1dfa34ad9540063-23
new file mode 100644
index 0000000..916dfa3
--- /dev/null
+++ b/testdata/fuzz/corpus/0a2060a21e9dfea36b635404b1dfa34ad9540063-23
@@ -0,0 +1 @@
+v=spf1 a:%%%%%%%% include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/0a7b5cdc8eac7830d419515b47c11a0cbcf0bdd3-11 b/testdata/fuzz/corpus/0a7b5cdc8eac7830d419515b47c11a0cbcf0bdd3-11
new file mode 100644
index 0000000..3063f74
--- /dev/null
+++ b/testdata/fuzz/corpus/0a7b5cdc8eac7830d419515b47c11a0cbcf0bdd3-11
@@ -0,0 +1 @@
+v=spf1 a:ŁŁ include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/0ae0ed61b45093f6121612116ac41e611b7ca57c-13 b/testdata/fuzz/corpus/0ae0ed61b45093f6121612116ac41e611b7ca57c-13
new file mode 100644
index 0000000..fca85d7
--- /dev/null
+++ b/testdata/fuzz/corpus/0ae0ed61b45093f6121612116ac41e611b7ca57c-13
@@ -0,0 +1 @@
+v=spf1 mx:Aa\x82 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/0c5f76d791418c99ac7dc9148ebffe4b226037d2 b/testdata/fuzz/corpus/0c5f76d791418c99ac7dc9148ebffe4b226037d2
new file mode 100644
index 0000000..0b6e377
--- /dev/null
+++ b/testdata/fuzz/corpus/0c5f76d791418c99ac7dc9148ebffe4b226037d2
@@ -0,0 +1 @@
+v=spf1 a:%{H} -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/0e5d97173ab36db60868cd5b0ac136c4657e0c79-13 b/testdata/fuzz/corpus/0e5d97173ab36db60868cd5b0ac136c4657e0c79-13
new file mode 100644
index 0000000..050e50f
--- /dev/null
+++ b/testdata/fuzz/corpus/0e5d97173ab36db60868cd5b0ac136c4657e0c79-13
@@ -0,0 +1 @@
+v=spf1 a:%{IR}%{IR}%{IR}%{IR} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/0f2c4e38efb96812b9ab096bcdd0a4d295879169-2 b/testdata/fuzz/corpus/0f2c4e38efb96812b9ab096bcdd0a4d295879169-2
new file mode 100644
index 0000000..ec137a3
--- /dev/null
+++ b/testdata/fuzz/corpus/0f2c4e38efb96812b9ab096bcdd0a4d295879169-2
@@ -0,0 +1 @@
+v=spf1 redirect=%{d1:}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/107174d48130ff0c7b15437e348ba16d8649b3dc-15 b/testdata/fuzz/corpus/107174d48130ff0c7b15437e348ba16d8649b3dc-15
new file mode 100644
index 0000000..7685743
--- /dev/null
+++ b/testdata/fuzz/corpus/107174d48130ff0c7b15437e348ba16d8649b3dc-15
@@ -0,0 +1 @@
+v=spf1 ip6:1:: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/1079f2c1b9f8fe829d185321520db4489ddc2a80-12 b/testdata/fuzz/corpus/1079f2c1b9f8fe829d185321520db4489ddc2a80-12
new file mode 100644
index 0000000..2aa8836
--- /dev/null
+++ b/testdata/fuzz/corpus/1079f2c1b9f8fe829d185321520db4489ddc2a80-12
@@ -0,0 +1 @@
+v=spf1 mx:%{i}%{i} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/1344b11657d8c0b3d0d7f6e76c0d728905615894 b/testdata/fuzz/corpus/1344b11657d8c0b3d0d7f6e76c0d728905615894
new file mode 100644
index 0000000..b16ea21
--- /dev/null
+++ b/testdata/fuzz/corpus/1344b11657d8c0b3d0d7f6e76c0d728905615894
@@ -0,0 +1 @@
+v=spf1 exists:%(
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/1380aa5a0953cae35d64ff6c145b5c0a3ba84228-20 b/testdata/fuzz/corpus/1380aa5a0953cae35d64ff6c145b5c0a3ba84228-20
new file mode 100644
index 0000000..762ce6e
--- /dev/null
+++ b/testdata/fuzz/corpus/1380aa5a0953cae35d64ff6c145b5c0a3ba84228-20
@@ -0,0 +1 @@
+v=spf1 mx:\xf3 mx:\xf3\x82\xf3\x82\xf3\x82\xf3\x80\xf3\x82\x82\xf3\x82\xf3\x82\xf3\x82\xf3\x82\x82\xf3\x82\xf3\x82\xf3\x80\xf3\x82\x82\xf3\x82\xf3\x82\xf3\x82\xf3\x82/
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/13d1473f6d375e492efdf7d50e696907721bf5d1-11 b/testdata/fuzz/corpus/13d1473f6d375e492efdf7d50e696907721bf5d1-11
new file mode 100644
index 0000000..fa34187
--- /dev/null
+++ b/testdata/fuzz/corpus/13d1473f6d375e492efdf7d50e696907721bf5d1-11
@@ -0,0 +1 @@
+v=spf1 a:%{V} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/16524c09938afe9f06450277c89b75b6f31c3cb4-21 b/testdata/fuzz/corpus/16524c09938afe9f06450277c89b75b6f31c3cb4-21
new file mode 100644
index 0000000..f41e209
--- /dev/null
+++ b/testdata/fuzz/corpus/16524c09938afe9f06450277c89b75b6f31c3cb4-21
@@ -0,0 +1 @@
+v=spf1 a:%_%_%_%_ include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/176cbdaa14dd6b36843f55f3f52d93bacd4e5955-13 b/testdata/fuzz/corpus/176cbdaa14dd6b36843f55f3f52d93bacd4e5955-13
new file mode 100644
index 0000000..c966c52
--- /dev/null
+++ b/testdata/fuzz/corpus/176cbdaa14dd6b36843f55f3f52d93bacd4e5955-13
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/182f3cb4545f1f16b4a58f54db1a64c6f94d7db8-2 b/testdata/fuzz/corpus/182f3cb4545f1f16b4a58f54db1a64c6f94d7db8-2
new file mode 100644
index 0000000..cad80e3
--- /dev/null
+++ b/testdata/fuzz/corpus/182f3cb4545f1f16b4a58f54db1a64c6f94d7db8-2
@@ -0,0 +1 @@
+v=spf1 a/071862645a4B361qZ_u
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/19530aae226c629fa64a142ade8d8edcaef2bc8a b/testdata/fuzz/corpus/19530aae226c629fa64a142ade8d8edcaef2bc8a
new file mode 100644
index 0000000..68c995e
--- /dev/null
+++ b/testdata/fuzz/corpus/19530aae226c629fa64a142ade8d8edcaef2bc8a
@@ -0,0 +1 @@
+v=spf1 a:sr-%{sr}-sr
diff --git a/testdata/fuzz/corpus/198de5285b908cd3f854185f75003361dc2e735e-11 b/testdata/fuzz/corpus/198de5285b908cd3f854185f75003361dc2e735e-11
new file mode 100644
index 0000000..095b206
--- /dev/null
+++ b/testdata/fuzz/corpus/198de5285b908cd3f854185f75003361dc2e735e-11
@@ -0,0 +1 @@
+v=spf1 mx mx mx mx mx mx mx mx mx m
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/19f2ae36f0113911c2f2caf4d94425ead0cf12d5-12 b/testdata/fuzz/corpus/19f2ae36f0113911c2f2caf4d94425ead0cf12d5-12
new file mode 100644
index 0000000..1452572
--- /dev/null
+++ b/testdata/fuzz/corpus/19f2ae36f0113911c2f2caf4d94425ead0cf12d5-12
@@ -0,0 +1 @@
+v=spf1 mx:ӳ include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/1abffb38597e7d7ca8287c59af3a580dd94082bc-16 b/testdata/fuzz/corpus/1abffb38597e7d7ca8287c59af3a580dd94082bc-16
new file mode 100644
index 0000000..a1f85cf
--- /dev/null
+++ b/testdata/fuzz/corpus/1abffb38597e7d7ca8287c59af3a580dd94082bc-16
@@ -0,0 +1 @@
+v=spf1 ptr ptr include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/1bc7b6182a4b27c3e44ef85bb4c3f023b5895445-10 b/testdata/fuzz/corpus/1bc7b6182a4b27c3e44ef85bb4c3f023b5895445-10
new file mode 100644
index 0000000..29e20d6
--- /dev/null
+++ b/testdata/fuzz/corpus/1bc7b6182a4b27c3e44ef85bb4c3f023b5895445-10
@@ -0,0 +1 @@
+v=spf1 mx mx mx: a mx mx a a mx mx
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/1d765a2f64502be5ce3b5af46b730baf5f571c5f-15 b/testdata/fuzz/corpus/1d765a2f64502be5ce3b5af46b730baf5f571c5f-15
new file mode 100644
index 0000000..4f35545
--- /dev/null
+++ b/testdata/fuzz/corpus/1d765a2f64502be5ce3b5af46b730baf5f571c5f-15
@@ -0,0 +1 @@
+v=spf1 a:%{I}%{I}%{I}%{I}%{I}%{I}%{I} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/1e7da528e7ea94d28e0b06b9ad59d3e5f0176505-13 b/testdata/fuzz/corpus/1e7da528e7ea94d28e0b06b9ad59d3e5f0176505-13
new file mode 100644
index 0000000..587eff6
--- /dev/null
+++ b/testdata/fuzz/corpus/1e7da528e7ea94d28e0b06b9ad59d3e5f0176505-13
@@ -0,0 +1 @@
+v=spf1 G\xeda: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/1ec151f32d7f2c3dc2a0a080076d58907c5d9936-1 b/testdata/fuzz/corpus/1ec151f32d7f2c3dc2a0a080076d58907c5d9936-1
new file mode 100644
index 0000000..862d8d3
--- /dev/null
+++ b/testdata/fuzz/corpus/1ec151f32d7f2c3dc2a0a080076d58907c5d9936-1
@@ -0,0 +1 @@
+v=spf1 ip6:1::1.2.3.4 ip6:::F.
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/1fb9a5465af43f2c57e70ca491cfe4e18b057e03 b/testdata/fuzz/corpus/1fb9a5465af43f2c57e70ca491cfe4e18b057e03
new file mode 100644
index 0000000..e98b211
--- /dev/null
+++ b/testdata/fuzz/corpus/1fb9a5465af43f2c57e70ca491cfe4e18b057e03
@@ -0,0 +1 @@
+v=spf1 a:%{v}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/21295637cfffaceb4887c0f9575ae03901b496f2-13 b/testdata/fuzz/corpus/21295637cfffaceb4887c0f9575ae03901b496f2-13
new file mode 100644
index 0000000..575c16a
--- /dev/null
+++ b/testdata/fuzz/corpus/21295637cfffaceb4887c0f9575ae03901b496f2-13
@@ -0,0 +1 @@
+v=spf1  include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/25b17e0f6aa9f73463b5a125f94427462931c764 b/testdata/fuzz/corpus/25b17e0f6aa9f73463b5a125f94427462931c764
new file mode 100644
index 0000000..ec4d5fe
--- /dev/null
+++ b/testdata/fuzz/corpus/25b17e0f6aa9f73463b5a125f94427462931c764
@@ -0,0 +1 @@
+v=spf1 ip6:
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/261144f593cb8f1c9efddc3ad230fc5328461f64-2 b/testdata/fuzz/corpus/261144f593cb8f1c9efddc3ad230fc5328461f64-2
new file mode 100644
index 0000000..b45cd6b
--- /dev/null
+++ b/testdata/fuzz/corpus/261144f593cb8f1c9efddc3ad230fc5328461f64-2
@@ -0,0 +1 @@
+v=spf1 a/0xAAdecEcFRCodeServerFailureEDCfddaFcb
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/26ef2aac1d567ca7f26c5ca33f35b7105854cbcd-1 b/testdata/fuzz/corpus/26ef2aac1d567ca7f26c5ca33f35b7105854cbcd-1
new file mode 100644
index 0000000..aaef2d4
--- /dev/null
+++ b/testdata/fuzz/corpus/26ef2aac1d567ca7f26c5ca33f35b7105854cbcd-1
@@ -0,0 +1 @@
+v=spf1 a/0xAAdecEcFEDCfddaFcb
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/277313194b11458746bc9563ff021603f86026be-5 b/testdata/fuzz/corpus/277313194b11458746bc9563ff021603f86026be-5
new file mode 100644
index 0000000..983cefa
--- /dev/null
+++ b/testdata/fuzz/corpus/277313194b11458746bc9563ff021603f86026be-5
@@ -0,0 +1 @@
+v=spf1 a/1107186265149230545149230570spf13
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/28ffad3f6a424067d4d18ec1247140b443b4afcd-2 b/testdata/fuzz/corpus/28ffad3f6a424067d4d18ec1247140b443b4afcd-2
new file mode 100644
index 0000000..3b51c01
--- /dev/null
+++ b/testdata/fuzz/corpus/28ffad3f6a424067d4d18ec1247140b443b4afcd-2
@@ -0,0 +1 @@
+v=spf1 redirect=%{\xefd}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/29874695932eb1c2f99f7e132ae49b7344217e09-1 b/testdata/fuzz/corpus/29874695932eb1c2f99f7e132ae49b7344217e09-1
new file mode 100644
index 0000000..5f425d7
--- /dev/null
+++ b/testdata/fuzz/corpus/29874695932eb1c2f99f7e132ae49b7344217e09-1
@@ -0,0 +1 @@
+v=spf1 exists:%{p.should.example.com
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/29e28385d0d3df9278eef7e091f5eef38a77299a-14 b/testdata/fuzz/corpus/29e28385d0d3df9278eef7e091f5eef38a77299a-14
new file mode 100644
index 0000000..995e254
--- /dev/null
+++ b/testdata/fuzz/corpus/29e28385d0d3df9278eef7e091f5eef38a77299a-14
@@ -0,0 +1 @@
+v=spf1 exists:d6660 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/2a18fe68ef661a1fc3be98b97172e74e9921953f-12 b/testdata/fuzz/corpus/2a18fe68ef661a1fc3be98b97172e74e9921953f-12
new file mode 100644
index 0000000..ddbbcd7
--- /dev/null
+++ b/testdata/fuzz/corpus/2a18fe68ef661a1fc3be98b97172e74e9921953f-12
@@ -0,0 +1 @@
+v=spf1 a:%{I=}%{I=}%{I=}%{I=} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/2ad9cbaa3fa9a83192bab623d544ced459390b15-17 b/testdata/fuzz/corpus/2ad9cbaa3fa9a83192bab623d544ced459390b15-17
new file mode 100644
index 0000000..c396b4b
--- /dev/null
+++ b/testdata/fuzz/corpus/2ad9cbaa3fa9a83192bab623d544ced459390b15-17
@@ -0,0 +1 @@
+v=spf1 ip6::: ip6::: ip6::: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/2c614e3b2bc205fc21f286208ad90f5852a3a3c0 b/testdata/fuzz/corpus/2c614e3b2bc205fc21f286208ad90f5852a3a3c0
new file mode 100644
index 0000000..9cdc433
--- /dev/null
+++ b/testdata/fuzz/corpus/2c614e3b2bc205fc21f286208ad90f5852a3a3c0
@@ -0,0 +1 @@
+v=spf1 ip6:2001:db8::1/2
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/2ce45a34e51535f32ece92b6c504e2baafbd6b8f-2 b/testdata/fuzz/corpus/2ce45a34e51535f32ece92b6c504e2baafbd6b8f-2
new file mode 100644
index 0000000..bc89019
--- /dev/null
+++ b/testdata/fuzz/corpus/2ce45a34e51535f32ece92b6c504e2baafbd6b8f-2
@@ -0,0 +1 @@
+v=spf1 a/0_AAdecEcFEDCfddaFc
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/2e761908b14b9886eadf46c97bef3443c4f34279 b/testdata/fuzz/corpus/2e761908b14b9886eadf46c97bef3443c4f34279
new file mode 100644
index 0000000..d4156f4
--- /dev/null
+++ b/testdata/fuzz/corpus/2e761908b14b9886eadf46c97bef3443c4f34279
@@ -0,0 +1 @@
+v=spf1 ip4:1.1.1.1 redirect=e
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/2e92f60a822db191e6a3696047757d19b87b442e-2 b/testdata/fuzz/corpus/2e92f60a822db191e6a3696047757d19b87b442e-2
new file mode 100644
index 0000000..108ac9f
--- /dev/null
+++ b/testdata/fuzz/corpus/2e92f60a822db191e6a3696047757d19b87b442e-2
@@ -0,0 +1 @@
+v=spf1 a/ecEcFEDCfddaFcxAAdecEcFEDCfddaFcb
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/2e9e26ae6d47e762073b4ee9631156e9a31fc053-10 b/testdata/fuzz/corpus/2e9e26ae6d47e762073b4ee9631156e9a31fc053-10
new file mode 100644
index 0000000..f96f455
--- /dev/null
+++ b/testdata/fuzz/corpus/2e9e26ae6d47e762073b4ee9631156e9a31fc053-10
@@ -0,0 +1 @@
+v=spf1 ip6::: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/2f6dea636578de2c87a881fea9375167c07bef69-3 b/testdata/fuzz/corpus/2f6dea636578de2c87a881fea9375167c07bef69-3
new file mode 100644
index 0000000..709cd8d
--- /dev/null
+++ b/testdata/fuzz/corpus/2f6dea636578de2c87a881fea9375167c07bef69-3
@@ -0,0 +1 @@
+v=spf1 redirect=%{o}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/2f90dd963ee0a06299d1a626e91c06a1e2ce426a-1 b/testdata/fuzz/corpus/2f90dd963ee0a06299d1a626e91c06a1e2ce426a-1
new file mode 100644
index 0000000..252e684
--- /dev/null
+++ b/testdata/fuzz/corpus/2f90dd963ee0a06299d1a626e91c06a1e2ce426a-1
@@ -0,0 +1 @@
+v=spf1 exists:%{ir}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/3033e7b46da95858f3ed9ca0446e84028f94cbb1-14 b/testdata/fuzz/corpus/3033e7b46da95858f3ed9ca0446e84028f94cbb1-14
new file mode 100644
index 0000000..d776963
--- /dev/null
+++ b/testdata/fuzz/corpus/3033e7b46da95858f3ed9ca0446e84028f94cbb1-14
@@ -0,0 +1 @@
+v=spf1 ip6:::/1 ip6:::/4 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/309a479231ac2f99ab6a3f5f89b9e1f6c915fe3e-9 b/testdata/fuzz/corpus/309a479231ac2f99ab6a3f5f89b9e1f6c915fe3e-9
new file mode 100644
index 0000000..178b581
--- /dev/null
+++ b/testdata/fuzz/corpus/309a479231ac2f99ab6a3f5f89b9e1f6c915fe3e-9
@@ -0,0 +1 @@
+v=spf1 a/107_8107_86564func2
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/30c46fec4d22edd4d1148041840693900926fc98-2 b/testdata/fuzz/corpus/30c46fec4d22edd4d1148041840693900926fc98-2
new file mode 100644
index 0000000..7be74ce
--- /dev/null
+++ b/testdata/fuzz/corpus/30c46fec4d22edd4d1148041840693900926fc98-2
@@ -0,0 +1 @@
+v=spf1 a/0xecEcFEDCfddaFcb__
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/334d89acc8738699117dd37ba157f822e0ec2d17-13 b/testdata/fuzz/corpus/334d89acc8738699117dd37ba157f822e0ec2d17-13
new file mode 100644
index 0000000..34c4729
--- /dev/null
+++ b/testdata/fuzz/corpus/334d89acc8738699117dd37ba157f822e0ec2d17-13
@@ -0,0 +1 @@
+v=spf1 \xeda: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/351f1e33b980a8c83d1d7b18a177458fd5a26dfe-14 b/testdata/fuzz/corpus/351f1e33b980a8c83d1d7b18a177458fd5a26dfe-14
new file mode 100644
index 0000000..ff8785c
--- /dev/null
+++ b/testdata/fuzz/corpus/351f1e33b980a8c83d1d7b18a177458fd5a26dfe-14
@@ -0,0 +1 @@
+v=spf1 a:%{IR}%{IR}%{IR}%{IR}%{IR}%{IR}%{IR} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/354fe722065c1cd0ab4032ee1048731740d31bcd-24 b/testdata/fuzz/corpus/354fe722065c1cd0ab4032ee1048731740d31bcd-24
new file mode 100644
index 0000000..442980a
--- /dev/null
+++ b/testdata/fuzz/corpus/354fe722065c1cd0ab4032ee1048731740d31bcd-24
@@ -0,0 +1 @@
+v=spf1 a:%%%%%%%%%%%%%% include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/377fa2d8517cb2e0b76535bc38b5d8c47d0d5283-13 b/testdata/fuzz/corpus/377fa2d8517cb2e0b76535bc38b5d8c47d0d5283-13
new file mode 100644
index 0000000..f14b242
--- /dev/null
+++ b/testdata/fuzz/corpus/377fa2d8517cb2e0b76535bc38b5d8c47d0d5283-13
@@ -0,0 +1 @@
+v=spf1 ip6:::/1 ip4:1.2.3.0/0
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/37d1952e25d8fe4fa79a0fe4f50b90087eb75ceb-11 b/testdata/fuzz/corpus/37d1952e25d8fe4fa79a0fe4f50b90087eb75ceb-11
new file mode 100644
index 0000000..e2d6cdf
--- /dev/null
+++ b/testdata/fuzz/corpus/37d1952e25d8fe4fa79a0fe4f50b90087eb75ceb-11
@@ -0,0 +1 @@
+v=spf1 a:%%%% include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/392cfa3036a12606981bea810dfa3e3037e1c335-1 b/testdata/fuzz/corpus/392cfa3036a12606981bea810dfa3e3037e1c335-1
new file mode 100644
index 0000000..cf6897e
--- /dev/null
+++ b/testdata/fuzz/corpus/392cfa3036a12606981bea810dfa3e3037e1c335-1
@@ -0,0 +1 @@
+v=spf1 exists:%{i}%{ser.%{d2}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/3a1ac72b5fae00487171fbbf7e8ed23e9cfa2801-4 b/testdata/fuzz/corpus/3a1ac72b5fae00487171fbbf7e8ed23e9cfa2801-4
new file mode 100644
index 0000000..d7f9ae7
--- /dev/null
+++ b/testdata/fuzz/corpus/3a1ac72b5fae00487171fbbf7e8ed23e9cfa2801-4
@@ -0,0 +1 @@
+ŁŁŁ
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/3a98f3c661d7d5f7e4fceb7738b85f493364af5f-1 b/testdata/fuzz/corpus/3a98f3c661d7d5f7e4fceb7738b85f493364af5f-1
new file mode 100644
index 0000000..14b07f0
--- /dev/null
+++ b/testdata/fuzz/corpus/3a98f3c661d7d5f7e4fceb7738b85f493364af5f-1
@@ -0,0 +1 @@
+v=spf1 ip4:1:F.
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/3acf06a7395f978f44fe56f8b3677aef69eb95c0 b/testdata/fuzz/corpus/3acf06a7395f978f44fe56f8b3677aef69eb95c0
new file mode 100644
index 0000000..97347c1
--- /dev/null
+++ b/testdata/fuzz/corpus/3acf06a7395f978f44fe56f8b3677aef69eb95c0
@@ -0,0 +1 @@
+v=spf1 ip6:CB/
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/3b32c5fe3ad89b114b25bbed3a5a1f3671946259-14 b/testdata/fuzz/corpus/3b32c5fe3ad89b114b25bbed3a5a1f3671946259-14
new file mode 100644
index 0000000..78fd64b
--- /dev/null
+++ b/testdata/fuzz/corpus/3b32c5fe3ad89b114b25bbed3a5a1f3671946259-14
@@ -0,0 +1 @@
+v=spf1 a:%-%-%-%-%-%-%-%- include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/3b5dab0aa1953bea3b79dce43b97a9a05b2ad778-19 b/testdata/fuzz/corpus/3b5dab0aa1953bea3b79dce43b97a9a05b2ad778-19
new file mode 100644
index 0000000..fe82ba5
--- /dev/null
+++ b/testdata/fuzz/corpus/3b5dab0aa1953bea3b79dce43b97a9a05b2ad778-19
@@ -0,0 +1 @@
+v=spf1 mx:\xf3\x82\x82\xf3\x82\xf3\x82\xf3\x80\xf3\x82\x82\xf3\x82\xf3\x82\xf3\x82\xf3\x82/
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/3bc13ee064af8ab5dae4d4c06a5daecc5a7c221b b/testdata/fuzz/corpus/3bc13ee064af8ab5dae4d4c06a5daecc5a7c221b
new file mode 100644
index 0000000..b0b4a44
--- /dev/null
+++ b/testdata/fuzz/corpus/3bc13ee064af8ab5dae4d4c06a5daecc5a7c221b
@@ -0,0 +1 @@
+v=spf1 a//129
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/3d6ae04fe800272eb51288db6176ce8f46a42bf1-1 b/testdata/fuzz/corpus/3d6ae04fe800272eb51288db6176ce8f46a42bf1-1
new file mode 100644
index 0000000..a0a68bf
--- /dev/null
+++ b/testdata/fuzz/corpus/3d6ae04fe800272eb51288db6176ce8f46a42bf1-1
@@ -0,0 +1 @@
+v=spf1 ptr ptr -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/3f40bd478e8379ac87548da7017d4a4b7d30254f-11 b/testdata/fuzz/corpus/3f40bd478e8379ac87548da7017d4a4b7d30254f-11
new file mode 100644
index 0000000..378f86b
--- /dev/null
+++ b/testdata/fuzz/corpus/3f40bd478e8379ac87548da7017d4a4b7d30254f-11
@@ -0,0 +1 @@
+v=spf1 mx:%{i}\x82 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/3f82cc6f3d954c07aab89004e03b634d34dbf462-14 b/testdata/fuzz/corpus/3f82cc6f3d954c07aab89004e03b634d34dbf462-14
new file mode 100644
index 0000000..996d5b6
--- /dev/null
+++ b/testdata/fuzz/corpus/3f82cc6f3d954c07aab89004e03b634d34dbf462-14
@@ -0,0 +1 @@
+v=spf1 a/1_7_7_1_7_7_1_4_7_7_1_0_4_7_7_1_1_7_7_1_7_7_1_4_7_7_1_0_4_7_7_1_7_
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/3fdb0915e3ddb50a67a2bbd242fdd8fca9809e4f b/testdata/fuzz/corpus/3fdb0915e3ddb50a67a2bbd242fdd8fca9809e4f
new file mode 100644
index 0000000..28fc2e6
--- /dev/null
+++ b/testdata/fuzz/corpus/3fdb0915e3ddb50a67a2bbd242fdd8fca9809e4f
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4 ip6:::FFFF:1.
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/40008dcd4553ae76a44b29bca36088ab89c1dee2-13 b/testdata/fuzz/corpus/40008dcd4553ae76a44b29bca36088ab89c1dee2-13
new file mode 100644
index 0000000..693a4bc
--- /dev/null
+++ b/testdata/fuzz/corpus/40008dcd4553ae76a44b29bca36088ab89c1dee2-13
@@ -0,0 +1 @@
+v=spf1 ip6:1::/1 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/402e4e9ad96ea7d59a4659e12e606f05e305932c-11 b/testdata/fuzz/corpus/402e4e9ad96ea7d59a4659e12e606f05e305932c-11
new file mode 100644
index 0000000..d2e2ba7
--- /dev/null
+++ b/testdata/fuzz/corpus/402e4e9ad96ea7d59a4659e12e606f05e305932c-11
@@ -0,0 +1 @@
+v=spf1 a/1_7_107_861_7_8107_
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/40c31e4805ee2897df4430511b8287f842a41737-16 b/testdata/fuzz/corpus/40c31e4805ee2897df4430511b8287f842a41737-16
new file mode 100644
index 0000000..a3e5eec
--- /dev/null
+++ b/testdata/fuzz/corpus/40c31e4805ee2897df4430511b8287f842a41737-16
@@ -0,0 +1 @@
+v=spf1 ip6:::1:b:6:1:b:6 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/41236d8c1423ef106d6854b3f198ec0972ecace3-2 b/testdata/fuzz/corpus/41236d8c1423ef106d6854b3f198ec0972ecace3-2
new file mode 100644
index 0000000..b30f8c1
--- /dev/null
+++ b/testdata/fuzz/corpus/41236d8c1423ef106d6854b3f198ec0972ecace3-2
@@ -0,0 +1 @@
+v=spf1 ip6:2006:2001:db8:2001:db::1f1 ip6:2001:db8:2001:db::1f1 ip6:2001:db88
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/4160602921c7d135ae47b10c4777dce5feb6b4f5-14 b/testdata/fuzz/corpus/4160602921c7d135ae47b10c4777dce5feb6b4f5-14
new file mode 100644
index 0000000..48e1497
--- /dev/null
+++ b/testdata/fuzz/corpus/4160602921c7d135ae47b10c4777dce5feb6b4f5-14
@@ -0,0 +1 @@
+v=spf1 a:%{p}%{p}%{p}%{p} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/4167d538cfc03975c215cfaf40929c93842867b6-4 b/testdata/fuzz/corpus/4167d538cfc03975c215cfaf40929c93842867b6-4
new file mode 100644
index 0000000..c58c35d
--- /dev/null
+++ b/testdata/fuzz/corpus/4167d538cfc03975c215cfaf40929c93842867b6-4
@@ -0,0 +1 @@
+v=spf1 ip6:CAF:CAFE:BE:BABEi
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/43b520e9d15b1406a66f15cf7049d473669d349f-12 b/testdata/fuzz/corpus/43b520e9d15b1406a66f15cf7049d473669d349f-12
new file mode 100644
index 0000000..7a00e5d
--- /dev/null
+++ b/testdata/fuzz/corpus/43b520e9d15b1406a66f15cf7049d473669d349f-12
@@ -0,0 +1 @@
+v=spf1 aG\xeda: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/43ec78237974dab44efdd20f7fc7e17e0084eec5-3 b/testdata/fuzz/corpus/43ec78237974dab44efdd20f7fc7e17e0084eec5-3
new file mode 100644
index 0000000..ca953ca
--- /dev/null
+++ b/testdata/fuzz/corpus/43ec78237974dab44efdd20f7fc7e17e0084eec5-3
@@ -0,0 +1 @@
+v=spf1 ip6:::1:b:6:1:8:8
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/46af4d8af841946ea02faebfadfcf2e282b63e15-10 b/testdata/fuzz/corpus/46af4d8af841946ea02faebfadfcf2e282b63e15-10
new file mode 100644
index 0000000..eb78424
Binary files /dev/null and b/testdata/fuzz/corpus/46af4d8af841946ea02faebfadfcf2e282b63e15-10 differ
diff --git a/testdata/fuzz/corpus/46c5b1a9ad5133f42174f2474c4845fa094b0ae9 b/testdata/fuzz/corpus/46c5b1a9ad5133f42174f2474c4845fa094b0ae9
new file mode 100644
index 0000000..365331b
--- /dev/null
+++ b/testdata/fuzz/corpus/46c5b1a9ad5133f42174f2474c4845fa094b0ae9
@@ -0,0 +1 @@
+v=spf1 redirect=e
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/46f3c6f8dbf187794e8cad8748192684ced6ebbe-1 b/testdata/fuzz/corpus/46f3c6f8dbf187794e8cad8748192684ced6ebbe-1
new file mode 100644
index 0000000..a0b4e66
--- /dev/null
+++ b/testdata/fuzz/corpus/46f3c6f8dbf187794e8cad8748192684ced6ebbe-1
@@ -0,0 +1 @@
+v=spf1 a:%%%% -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/4a88aeeef6ee62498731df98ef39a181ca031d7f-1 b/testdata/fuzz/corpus/4a88aeeef6ee62498731df98ef39a181ca031d7f-1
new file mode 100644
index 0000000..beef883
--- /dev/null
+++ b/testdata/fuzz/corpus/4a88aeeef6ee62498731df98ef39a181ca031d7f-1
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4 ip6:.
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/4c6d20565dc5823444f3be8860a98d4e58b8fe3d-20 b/testdata/fuzz/corpus/4c6d20565dc5823444f3be8860a98d4e58b8fe3d-20
new file mode 100644
index 0000000..b84ce92
--- /dev/null
+++ b/testdata/fuzz/corpus/4c6d20565dc5823444f3be8860a98d4e58b8fe3d-20
@@ -0,0 +1 @@
+v=spf1 a:%%%_%_ include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/4df53e976f13c312ab2ec5721ebe7f42e7c5f314-14 b/testdata/fuzz/corpus/4df53e976f13c312ab2ec5721ebe7f42e7c5f314-14
new file mode 100644
index 0000000..281c753
--- /dev/null
+++ b/testdata/fuzz/corpus/4df53e976f13c312ab2ec5721ebe7f42e7c5f314-14
@@ -0,0 +1 @@
+v=spf1 ptr:e ptr:4 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/4e623b674b72c0ccb74be1a22452b492076e305b-14 b/testdata/fuzz/corpus/4e623b674b72c0ccb74be1a22452b492076e305b-14
new file mode 100644
index 0000000..dcd0ea9
--- /dev/null
+++ b/testdata/fuzz/corpus/4e623b674b72c0ccb74be1a22452b492076e305b-14
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4 ip6:4::/4 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/4f62290526f37f0c23a89db6d711726773e0a7b3-4 b/testdata/fuzz/corpus/4f62290526f37f0c23a89db6d711726773e0a7b3-4
new file mode 100644
index 0000000..02384b9
--- /dev/null
+++ b/testdata/fuzz/corpus/4f62290526f37f0c23a89db6d711726773e0a7b3-4
@@ -0,0 +1 @@
+v=spf1 mx:%{78800500929355621337890%%{363797880709171295166015625}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/50f714a03a1b2d022e689425d03f454d82b30c9f-1 b/testdata/fuzz/corpus/50f714a03a1b2d022e689425d03f454d82b30c9f-1
new file mode 100644
index 0000000..efd4917
--- /dev/null
+++ b/testdata/fuzz/corpus/50f714a03a1b2d022e689425d03f454d82b30c9f-1
@@ -0,0 +1 @@
+v=spf1 redirect=%{d}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/51c669411f5eb38639755018ac9f20f44e912a2c-13 b/testdata/fuzz/corpus/51c669411f5eb38639755018ac9f20f44e912a2c-13
new file mode 100644
index 0000000..2c2fbeb
--- /dev/null
+++ b/testdata/fuzz/corpus/51c669411f5eb38639755018ac9f20f44e912a2c-13
@@ -0,0 +1 @@
+v=spf1 a:d6660 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/522509938b7f74a2c32b5ccc319b1bc9506ed08b b/testdata/fuzz/corpus/522509938b7f74a2c32b5ccc319b1bc9506ed08b
new file mode 100644
index 0000000..7c483a7
--- /dev/null
+++ b/testdata/fuzz/corpus/522509938b7f74a2c32b5ccc319b1bc9506ed08b
@@ -0,0 +1 @@
+v=spf1 ip4:1.1.1.1 -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/52b82bd1069487c6717cc5d7a643ef643b33efc3-12 b/testdata/fuzz/corpus/52b82bd1069487c6717cc5d7a643ef643b33efc3-12
new file mode 100644
index 0000000..5c33cff
--- /dev/null
+++ b/testdata/fuzz/corpus/52b82bd1069487c6717cc5d7a643ef643b33efc3-12
@@ -0,0 +1 @@
+v=spf1 mx:Ἥ include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/52ccacd4bf39b5336bdd46704462e94181e2757d b/testdata/fuzz/corpus/52ccacd4bf39b5336bdd46704462e94181e2757d
new file mode 100644
index 0000000..ee6765b
--- /dev/null
+++ b/testdata/fuzz/corpus/52ccacd4bf39b5336bdd46704462e94181e2757d
@@ -0,0 +1 @@
+v=spf1 a//3 -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/53c9798f3a3093cc4829925722019dff356aebbc b/testdata/fuzz/corpus/53c9798f3a3093cc4829925722019dff356aebbc
new file mode 100644
index 0000000..6e20170
--- /dev/null
+++ b/testdata/fuzz/corpus/53c9798f3a3093cc4829925722019dff356aebbc
@@ -0,0 +1 @@
+v=spf1 -include:_spfh.%{d2}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/5594ae6ef897d6063f01e0adf41caceff607c7e2-7 b/testdata/fuzz/corpus/5594ae6ef897d6063f01e0adf41caceff607c7e2-7
new file mode 100644
index 0000000..49eb738
--- /dev/null
+++ b/testdata/fuzz/corpus/5594ae6ef897d6063f01e0adf41caceff607c7e2-7
@@ -0,0 +1 @@
+v=spf1 a/1107J86564func2cont
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/56628f9e0351e9b115c764ffbe94c19efaeb0389-3 b/testdata/fuzz/corpus/56628f9e0351e9b115c764ffbe94c19efaeb0389-3
new file mode 100644
index 0000000..83b6ac3
--- /dev/null
+++ b/testdata/fuzz/corpus/56628f9e0351e9b115c764ffbe94c19efaeb0389-3
@@ -0,0 +1 @@
+v=spf1 redirect=%{l3}%{o}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/56a1bc1c7a3649800dbe3280f23d247155155e51 b/testdata/fuzz/corpus/56a1bc1c7a3649800dbe3280f23d247155155e51
new file mode 100644
index 0000000..bfcdac6
--- /dev/null
+++ b/testdata/fuzz/corpus/56a1bc1c7a3649800dbe3280f23d247155155e51
@@ -0,0 +1 @@
+v=spf1 a:ppp-%{p}-ppp
diff --git a/testdata/fuzz/corpus/56d71aa7952234711b33c3afbccc1207d73eeb14-2 b/testdata/fuzz/corpus/56d71aa7952234711b33c3afbccc1207d73eeb14-2
new file mode 100644
index 0000000..5546484
--- /dev/null
+++ b/testdata/fuzz/corpus/56d71aa7952234711b33c3afbccc1207d73eeb14-2
@@ -0,0 +1 @@
+v=spf1 M
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/574189fe1098971730f7f8ba309a172e4325bc2f b/testdata/fuzz/corpus/574189fe1098971730f7f8ba309a172e4325bc2f
new file mode 100644
index 0000000..b138dba
--- /dev/null
+++ b/testdata/fuzz/corpus/574189fe1098971730f7f8ba309a172e4325bc2f
@@ -0,0 +1 @@
+v=spf1 a:%{o1}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/58a9b1b0abcd5cf81ddd1a0ad4488b363729fb2b-1 b/testdata/fuzz/corpus/58a9b1b0abcd5cf81ddd1a0ad4488b363729fb2b-1
new file mode 100644
index 0000000..5aa84b9
--- /dev/null
+++ b/testdata/fuzz/corpus/58a9b1b0abcd5cf81ddd1a0ad4488b363729fb2b-1
@@ -0,0 +1 @@
+v=spf1 exists:%{i}%{l82350949848729030}%{d2}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/598f7b8e006d6633a74f959a5466655a27fbd478 b/testdata/fuzz/corpus/598f7b8e006d6633a74f959a5466655a27fbd478
new file mode 100644
index 0000000..6d72f2a
--- /dev/null
+++ b/testdata/fuzz/corpus/598f7b8e006d6633a74f959a5466655a27fbd478
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/5c68ecddd321d7279a3b0e620317935b7d4e8ce1-2 b/testdata/fuzz/corpus/5c68ecddd321d7279a3b0e620317935b7d4e8ce1-2
new file mode 100644
index 0000000..66a916d
--- /dev/null
+++ b/testdata/fuzz/corpus/5c68ecddd321d7279a3b0e620317935b7d4e8ce1-2
@@ -0,0 +1 @@
+v=spf1 ip4:1862645a4B361qZ_usk_cs__68t____gWGu__k_y-
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/5fdf397505b4fc0d3761721f15489860dd65b2b6-1 b/testdata/fuzz/corpus/5fdf397505b4fc0d3761721f15489860dd65b2b6-1
new file mode 100644
index 0000000..532e8b8
--- /dev/null
+++ b/testdata/fuzz/corpus/5fdf397505b4fc0d3761721f15489860dd65b2b6-1
@@ -0,0 +1 @@
+v=spf1 exists:%{r}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/60658aaa3f93cd568bdf81690c1c0d3640d124be b/testdata/fuzz/corpus/60658aaa3f93cd568bdf81690c1c0d3640d124be
new file mode 100644
index 0000000..4dbb746
--- /dev/null
+++ b/testdata/fuzz/corpus/60658aaa3f93cd568bdf81690c1c0d3640d124be
@@ -0,0 +1 @@
+v=spf1 a:%%%_%_%- -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/60b77bed79cf2f081d781270f6c64500c65f2141-1 b/testdata/fuzz/corpus/60b77bed79cf2f081d781270f6c64500c65f2141-1
new file mode 100644
index 0000000..ad1de8c
--- /dev/null
+++ b/testdata/fuzz/corpus/60b77bed79cf2f081d781270f6c64500c65f2141-1
@@ -0,0 +1 @@
+v=spf1 ip6:e:e:0:$
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/60f915049f6f1a9cc5ac4ef693fa3e9094321cc4-13 b/testdata/fuzz/corpus/60f915049f6f1a9cc5ac4ef693fa3e9094321cc4-13
new file mode 100644
index 0000000..d044376
--- /dev/null
+++ b/testdata/fuzz/corpus/60f915049f6f1a9cc5ac4ef693fa3e9094321cc4-13
@@ -0,0 +1 @@
+v=spf1 ptr include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/61c4b104c84b6d8d909e3b0290c6af0c12388bf3-1 b/testdata/fuzz/corpus/61c4b104c84b6d8d909e3b0290c6af0c12388bf3-1
new file mode 100644
index 0000000..518f7f5
--- /dev/null
+++ b/testdata/fuzz/corpus/61c4b104c84b6d8d909e3b0290c6af0c12388bf3-1
@@ -0,0 +1 @@
+v=spf1 exists:%{V}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/6273611346aa5c20c3ce44cae49017f9124aa5de-12 b/testdata/fuzz/corpus/6273611346aa5c20c3ce44cae49017f9124aa5de-12
new file mode 100644
index 0000000..ee00752
--- /dev/null
+++ b/testdata/fuzz/corpus/6273611346aa5c20c3ce44cae49017f9124aa5de-12
@@ -0,0 +1 @@
+v=spf1 a/1_7_7_1_4_7_7_1_07_
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/632efcbdcb1acc95d5438c0465d1974675f9529c-15 b/testdata/fuzz/corpus/632efcbdcb1acc95d5438c0465d1974675f9529c-15
new file mode 100644
index 0000000..24acc88
--- /dev/null
+++ b/testdata/fuzz/corpus/632efcbdcb1acc95d5438c0465d1974675f9529c-15
@@ -0,0 +1 @@
+v=spf1 a:%{V}%{V}%{V}%{V}%{V}%{V}%{V}%{V}%{V}%{V}%{V}%{V}%{V} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/63d6872579dc76522b1003f2a21320d38d953410-13 b/testdata/fuzz/corpus/63d6872579dc76522b1003f2a21320d38d953410-13
new file mode 100644
index 0000000..020c760
--- /dev/null
+++ b/testdata/fuzz/corpus/63d6872579dc76522b1003f2a21320d38d953410-13
@@ -0,0 +1 @@
+v=spf1 +include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/66db2560a9ac8dac4bf979cb47812b01decf06eb b/testdata/fuzz/corpus/66db2560a9ac8dac4bf979cb47812b01decf06eb
new file mode 100644
index 0000000..1ba986c
--- /dev/null
+++ b/testdata/fuzz/corpus/66db2560a9ac8dac4bf979cb47812b01decf06eb
@@ -0,0 +1 @@
+v=spf1 ptr:%}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/66e8dd891c16ec4c27e041b82c3115a92ad5832a b/testdata/fuzz/corpus/66e8dd891c16ec4c27e041b82c3115a92ad5832a
new file mode 100644
index 0000000..a62c806
--- /dev/null
+++ b/testdata/fuzz/corpus/66e8dd891c16ec4c27e041b82c3115a92ad5832a
@@ -0,0 +1 @@
+v=spf1 mx:d1110/24//129
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/67e6e2e608167be0596021157131b64ad7b91da2-2 b/testdata/fuzz/corpus/67e6e2e608167be0596021157131b64ad7b91da2-2
new file mode 100644
index 0000000..89924f4
--- /dev/null
+++ b/testdata/fuzz/corpus/67e6e2e608167be0596021157131b64ad7b91da2-2
@@ -0,0 +1 @@
+v=spf1 ip6:1:8:1:b::6:1:8:8
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/6896ec67b390b407509284648c9aa7c474a04039-8 b/testdata/fuzz/corpus/6896ec67b390b407509284648c9aa7c474a04039-8
new file mode 100644
index 0000000..6a09716
--- /dev/null
+++ b/testdata/fuzz/corpus/6896ec67b390b407509284648c9aa7c474a04039-8
@@ -0,0 +1 @@
+v=spf1 \xbdptr: \xbdptr: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/689da1b392dfdb3776bb8ffa04f5d731638e92f3-3 b/testdata/fuzz/corpus/689da1b392dfdb3776bb8ffa04f5d731638e92f3-3
new file mode 100644
index 0000000..bccb7ee
--- /dev/null
+++ b/testdata/fuzz/corpus/689da1b392dfdb3776bb8ffa04f5d731638e92f3-3
@@ -0,0 +1 @@
+v=spf1 redirect=%{dr}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/6a96f7df5daf601f47990aef577392392f4a664a-4 b/testdata/fuzz/corpus/6a96f7df5daf601f47990aef577392392f4a664a-4
new file mode 100644
index 0000000..cffcc27
--- /dev/null
+++ b/testdata/fuzz/corpus/6a96f7df5daf601f47990aef577392392f4a664a-4
@@ -0,0 +1 @@
+v=spf1    redirect=%{d}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/6d7bb009e8728bd239a22e5319974b3a5b87614e-1 b/testdata/fuzz/corpus/6d7bb009e8728bd239a22e5319974b3a5b87614e-1
new file mode 100644
index 0000000..14ce725
--- /dev/null
+++ b/testdata/fuzz/corpus/6d7bb009e8728bd239a22e5319974b3a5b87614e-1
@@ -0,0 +1 @@
+v=spf1 ip6:Cafe:Babe:6:Cafe:B0:
diff --git a/testdata/fuzz/corpus/6d9c90e1d0e3649b67945b2d0406f339540cf98c-12 b/testdata/fuzz/corpus/6d9c90e1d0e3649b67945b2d0406f339540cf98c-12
new file mode 100644
index 0000000..936a5e9
--- /dev/null
+++ b/testdata/fuzz/corpus/6d9c90e1d0e3649b67945b2d0406f339540cf98c-12
@@ -0,0 +1 @@
+v=spf1 a:%{s}%{s} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/6ef264dc7512c4232e16d8db5eb28eb1b0250d4d-16 b/testdata/fuzz/corpus/6ef264dc7512c4232e16d8db5eb28eb1b0250d4d-16
new file mode 100644
index 0000000..69cd51a
--- /dev/null
+++ b/testdata/fuzz/corpus/6ef264dc7512c4232e16d8db5eb28eb1b0250d4d-16
@@ -0,0 +1 @@
+v=spf1 a:%{I}%{I}%{I}%{I}%{I}%{I}%{I}%{I}%{I}%{I}%{I}%{I}%{I} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/72640f46c1303246ecca69b3e6866c471f32645b b/testdata/fuzz/corpus/72640f46c1303246ecca69b3e6866c471f32645b
new file mode 100644
index 0000000..5e55c40
--- /dev/null
+++ b/testdata/fuzz/corpus/72640f46c1303246ecca69b3e6866c471f32645b
@@ -0,0 +1 @@
+v=spf1 ip4:/
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/72dd6c39431c5518730e9d9484962bc778fb2544-22 b/testdata/fuzz/corpus/72dd6c39431c5518730e9d9484962bc778fb2544-22
new file mode 100644
index 0000000..82b9bab
--- /dev/null
+++ b/testdata/fuzz/corpus/72dd6c39431c5518730e9d9484962bc778fb2544-22
@@ -0,0 +1 @@
+v=spf1 a:%_%_%_%_%_%_%_ include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/73463692358cdf893e7cf552b3b2b5e311b85305 b/testdata/fuzz/corpus/73463692358cdf893e7cf552b3b2b5e311b85305
new file mode 100644
index 0000000..33fa9ac
--- /dev/null
+++ b/testdata/fuzz/corpus/73463692358cdf893e7cf552b3b2b5e311b85305
@@ -0,0 +1 @@
+v=spf1 mx:d1110/2
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/737ebd2b89624cd21e3f0721b456355588f4ece8-12 b/testdata/fuzz/corpus/737ebd2b89624cd21e3f0721b456355588f4ece8-12
new file mode 100644
index 0000000..9159a19
--- /dev/null
+++ b/testdata/fuzz/corpus/737ebd2b89624cd21e3f0721b456355588f4ece8-12
@@ -0,0 +1 @@
+v=spf1 exp=\x82\xf3\x82\x82\xf3\x82\x82\xf3\x82\x82\xf3\x82\x82\xf3\x82\x82 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/739f18ee4881e1138630b0d7ffadc8d041040476-13 b/testdata/fuzz/corpus/739f18ee4881e1138630b0d7ffadc8d041040476-13
new file mode 100644
index 0000000..876f815
--- /dev/null
+++ b/testdata/fuzz/corpus/739f18ee4881e1138630b0d7ffadc8d041040476-13
@@ -0,0 +1 @@
+v=spf1 ip6:94304040/74348449
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/73e1afe5697623bdcfe1211204f7e0fb951a4c32-6 b/testdata/fuzz/corpus/73e1afe5697623bdcfe1211204f7e0fb951a4c32-6
new file mode 100644
index 0000000..25f55b0
--- /dev/null
+++ b/testdata/fuzz/corpus/73e1afe5697623bdcfe1211204f7e0fb951a4c32-6
@@ -0,0 +1 @@
+v=spf1 redirect=%{l}%{l}%{l}%{o}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/74391ecf9d5baefd2cd7535363ced8e5cafdfb4a-12 b/testdata/fuzz/corpus/74391ecf9d5baefd2cd7535363ced8e5cafdfb4a-12
new file mode 100644
index 0000000..4c67a9a
--- /dev/null
+++ b/testdata/fuzz/corpus/74391ecf9d5baefd2cd7535363ced8e5cafdfb4a-12
@@ -0,0 +1 @@
+v=spf1 a:%{V}%{V} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/755e57e00fb8fe9343195c109153983b458c48f1-15 b/testdata/fuzz/corpus/755e57e00fb8fe9343195c109153983b458c48f1-15
new file mode 100644
index 0000000..9392ec7
--- /dev/null
+++ b/testdata/fuzz/corpus/755e57e00fb8fe9343195c109153983b458c48f1-15
@@ -0,0 +1 @@
+v=spf1 ip4:4::/4 ip6:4::/4 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/756598fcdae09b8a543f39a9dd1aee7468ec07bc-11 b/testdata/fuzz/corpus/756598fcdae09b8a543f39a9dd1aee7468ec07bc-11
new file mode 100644
index 0000000..9dfefd0
--- /dev/null
+++ b/testdata/fuzz/corpus/756598fcdae09b8a543f39a9dd1aee7468ec07bc-11
@@ -0,0 +1 @@
+v=spf1 a:%- include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/75a64f372534aebaf3838c8cab4260113be8fa08-7 b/testdata/fuzz/corpus/75a64f372534aebaf3838c8cab4260113be8fa08-7
new file mode 100644
index 0000000..74d1da3
--- /dev/null
+++ b/testdata/fuzz/corpus/75a64f372534aebaf3838c8cab4260113be8fa08-7
@@ -0,0 +1 @@
+v=spf1 ptr:\xbd ptr:\xbd ptr:\xbd include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/7652ffe29e111d0db9410539df17d79bc238208c-13 b/testdata/fuzz/corpus/7652ffe29e111d0db9410539df17d79bc238208c-13
new file mode 100644
index 0000000..ba49845
--- /dev/null
+++ b/testdata/fuzz/corpus/7652ffe29e111d0db9410539df17d79bc238208c-13
@@ -0,0 +1 @@
+v=spf1 a:d1110/32 a:d1110/5 a:d1110/1 a:d1110/1 a:d1110/1 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/777410981fb83bfc115b9d73658384744ca5b9aa-13 b/testdata/fuzz/corpus/777410981fb83bfc115b9d73658384744ca5b9aa-13
new file mode 100644
index 0000000..b2be591
--- /dev/null
+++ b/testdata/fuzz/corpus/777410981fb83bfc115b9d73658384744ca5b9aa-13
@@ -0,0 +1 @@
+v=spf1 a:d6660//1 a:d1111
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/77adc4c141f7dd876302adc5983bbde56337d906-1 b/testdata/fuzz/corpus/77adc4c141f7dd876302adc5983bbde56337d906-1
new file mode 100644
index 0000000..635c65a
--- /dev/null
+++ b/testdata/fuzz/corpus/77adc4c141f7dd876302adc5983bbde56337d906-1
@@ -0,0 +1 @@
+v=spf1 a:%{o}%{o}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/7949acda013fef8a8ac8159d6956f06da5498bb8-1 b/testdata/fuzz/corpus/7949acda013fef8a8ac8159d6956f06da5498bb8-1
new file mode 100644
index 0000000..f4249d2
--- /dev/null
+++ b/testdata/fuzz/corpus/7949acda013fef8a8ac8159d6956f06da5498bb8-1
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4 ip6:::
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/7b240b945ea1c29125653542c1f293550fd3efea-2 b/testdata/fuzz/corpus/7b240b945ea1c29125653542c1f293550fd3efea-2
new file mode 100644
index 0000000..a14f451
--- /dev/null
+++ b/testdata/fuzz/corpus/7b240b945ea1c29125653542c1f293550fd3efea-2
@@ -0,0 +1 @@
+v=spf1 exists:%{{82350949848729030-}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/7bef4f9bf55a5b438de0d3676f7a4a06897999cf-12 b/testdata/fuzz/corpus/7bef4f9bf55a5b438de0d3676f7a4a06897999cf-12
new file mode 100644
index 0000000..4096d32
--- /dev/null
+++ b/testdata/fuzz/corpus/7bef4f9bf55a5b438de0d3676f7a4a06897999cf-12
@@ -0,0 +1 @@
+v=spf1 ip6::: ip6::: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/7c47587b4bbec9f37bf2ffd00c146a531e8ece00-2 b/testdata/fuzz/corpus/7c47587b4bbec9f37bf2ffd00c146a531e8ece00-2
new file mode 100644
index 0000000..f871aa8
--- /dev/null
+++ b/testdata/fuzz/corpus/7c47587b4bbec9f37bf2ffd00c146a531e8ece00-2
@@ -0,0 +1 @@
+v=spf1 mx:%{i}%{i}%{i} -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/7f5b9fea2aabe47c7d5fa23f72a3d6f67967c789-1 b/testdata/fuzz/corpus/7f5b9fea2aabe47c7d5fa23f72a3d6f67967c789-1
new file mode 100644
index 0000000..ee6026a
--- /dev/null
+++ b/testdata/fuzz/corpus/7f5b9fea2aabe47c7d5fa23f72a3d6f67967c789-1
@@ -0,0 +1 @@
+v=spf1 ip6:::
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/7f94a20a3d14ae96187abe57face44d86ff654d1-12 b/testdata/fuzz/corpus/7f94a20a3d14ae96187abe57face44d86ff654d1-12
new file mode 100644
index 0000000..cf410c2
--- /dev/null
+++ b/testdata/fuzz/corpus/7f94a20a3d14ae96187abe57face44d86ff654d1-12
@@ -0,0 +1 @@
+v=spf1 a:%{I}%{i}%{i}%{i}%{i} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/80381ec0dd66440317fa79bd0ab362ba82719e65-7 b/testdata/fuzz/corpus/80381ec0dd66440317fa79bd0ab362ba82719e65-7
new file mode 100644
index 0000000..7c361c4
--- /dev/null
+++ b/testdata/fuzz/corpus/80381ec0dd66440317fa79bd0ab362ba82719e65-7
@@ -0,0 +1 @@
+v=spf1 redirect=%{l}%{l}%{l}%{l}%{o}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/80ac09e7f0993b0086e842b1684a3cf6b7ed2dae-14 b/testdata/fuzz/corpus/80ac09e7f0993b0086e842b1684a3cf6b7ed2dae-14
new file mode 100644
index 0000000..c1f639d
--- /dev/null
+++ b/testdata/fuzz/corpus/80ac09e7f0993b0086e842b1684a3cf6b7ed2dae-14
@@ -0,0 +1 @@
+v=spf1 Ga: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/828c73a6223be952748d5fdb5246ddc8d1072236-3 b/testdata/fuzz/corpus/828c73a6223be952748d5fdb5246ddc8d1072236-3
new file mode 100644
index 0000000..a2c4c16
--- /dev/null
+++ b/testdata/fuzz/corpus/828c73a6223be952748d5fdb5246ddc8d1072236-3
@@ -0,0 +1 @@
+v=spf1 ip6:2006:2001:8:2001::11 ip6:2001:8:2001::116:2001:88
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/837dce66ca9aaa4d4995ac40d00fe066c2a1c4f8 b/testdata/fuzz/corpus/837dce66ca9aaa4d4995ac40d00fe066c2a1c4f8
new file mode 100644
index 0000000..df9813e
--- /dev/null
+++ b/testdata/fuzz/corpus/837dce66ca9aaa4d4995ac40d00fe066c2a1c4f8
@@ -0,0 +1 @@
+v=spf1 a/exAAdecEcFEDCfddaFcb
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/838423f0949b7ed6bb1656550dbfe62c6ca7f196 b/testdata/fuzz/corpus/838423f0949b7ed6bb1656550dbfe62c6ca7f196
new file mode 100644
index 0000000..69ba665
--- /dev/null
+++ b/testdata/fuzz/corpus/838423f0949b7ed6bb1656550dbfe62c6ca7f196
@@ -0,0 +1 @@
+v=spf1 include:
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/84ad86ae4a2dc2f61c974f4de865f88b42f8eacc-10 b/testdata/fuzz/corpus/84ad86ae4a2dc2f61c974f4de865f88b42f8eacc-10
new file mode 100644
index 0000000..c722a75
--- /dev/null
+++ b/testdata/fuzz/corpus/84ad86ae4a2dc2f61c974f4de865f88b42f8eacc-10
@@ -0,0 +1 @@
+v=spf1 a:%{I}%{i}%{i} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/859199c9754e10f22cd1e8841ab2a80c75566cf6 b/testdata/fuzz/corpus/859199c9754e10f22cd1e8841ab2a80c75566cf6
new file mode 100644
index 0000000..05cffdb
--- /dev/null
+++ b/testdata/fuzz/corpus/859199c9754e10f22cd1e8841ab2a80c75566cf6
@@ -0,0 +1 @@
+v=spf1 ptr:ae ptr:ae exp=ae al
diff --git a/testdata/fuzz/corpus/85c7a4d79af67f0a01b9a00a52be6d4d5279ac55-5 b/testdata/fuzz/corpus/85c7a4d79af67f0a01b9a00a52be6d4d5279ac55-5
new file mode 100644
index 0000000..b490f54
--- /dev/null
+++ b/testdata/fuzz/corpus/85c7a4d79af67f0a01b9a00a52be6d4d5279ac55-5
@@ -0,0 +1 @@
+v=spf1 redirect=%{l}%{l}%{o}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/88165e348fbb0dddac43be4d6625224722f87133 b/testdata/fuzz/corpus/88165e348fbb0dddac43be4d6625224722f87133
new file mode 100644
index 0000000..3490072
--- /dev/null
+++ b/testdata/fuzz/corpus/88165e348fbb0dddac43be4d6625224722f87133
@@ -0,0 +1 @@
+v=spf1 exists:/
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/8927772091f444bee910b24247e9ff25c95d58fb-12 b/testdata/fuzz/corpus/8927772091f444bee910b24247e9ff25c95d58fb-12
new file mode 100644
index 0000000..7006b69
--- /dev/null
+++ b/testdata/fuzz/corpus/8927772091f444bee910b24247e9ff25c95d58fb-12
@@ -0,0 +1 @@
+v=spf1 a:%{p} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/8ac59d1ab0b3a5fac14b352f92584f4dea4a9b2e-19 b/testdata/fuzz/corpus/8ac59d1ab0b3a5fac14b352f92584f4dea4a9b2e-19
new file mode 100644
index 0000000..e480a47
--- /dev/null
+++ b/testdata/fuzz/corpus/8ac59d1ab0b3a5fac14b352f92584f4dea4a9b2e-19
@@ -0,0 +1 @@
+v=spf1 V= V= include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/8b29df6acaf2fcc4f29d3b709f85c3cb17717867 b/testdata/fuzz/corpus/8b29df6acaf2fcc4f29d3b709f85c3cb17717867
new file mode 100644
index 0000000..615daa4
--- /dev/null
+++ b/testdata/fuzz/corpus/8b29df6acaf2fcc4f29d3b709f85c3cb17717867
@@ -0,0 +1 @@
+v=spf1 a/4 -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/8b2bb8cd4f6eb4a879d359d84345308003e3362b-14 b/testdata/fuzz/corpus/8b2bb8cd4f6eb4a879d359d84345308003e3362b-14
new file mode 100644
index 0000000..36d8102
--- /dev/null
+++ b/testdata/fuzz/corpus/8b2bb8cd4f6eb4a879d359d84345308003e3362b-14
@@ -0,0 +1 @@
+v=spf1 a:%{V}%{V}%{V}%{V}%{V}%{V}%{V} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/8c4f9dfe76423ff4683bdd5058779d9101f24b79-15 b/testdata/fuzz/corpus/8c4f9dfe76423ff4683bdd5058779d9101f24b79-15
new file mode 100644
index 0000000..8261017
--- /dev/null
+++ b/testdata/fuzz/corpus/8c4f9dfe76423ff4683bdd5058779d9101f24b79-15
@@ -0,0 +1 @@
+v=spf1 ip6:::1.2.3.4 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/8cebd1fdd0164acca4c62330f79f3c02d9a60763-2 b/testdata/fuzz/corpus/8cebd1fdd0164acca4c62330f79f3c02d9a60763-2
new file mode 100644
index 0000000..777f8ee
--- /dev/null
+++ b/testdata/fuzz/corpus/8cebd1fdd0164acca4c62330f79f3c02d9a60763-2
@@ -0,0 +1 @@
+v=spf1 ip6:1::1.3:/
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/8d029147e2084816fb319802ea77b01efd391b54-13 b/testdata/fuzz/corpus/8d029147e2084816fb319802ea77b01efd391b54-13
new file mode 100644
index 0000000..0da42f1
--- /dev/null
+++ b/testdata/fuzz/corpus/8d029147e2084816fb319802ea77b01efd391b54-13
@@ -0,0 +1 @@
+v=spf1 a/1_7_7_1_7_7_1_4_7_7_1_0_4_7_7_1_7_
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/8e053980cb3e6f47e74cc8f2bdeae555e8fea559-3 b/testdata/fuzz/corpus/8e053980cb3e6f47e74cc8f2bdeae555e8fea559-3
new file mode 100644
index 0000000..4bc0029
--- /dev/null
+++ b/testdata/fuzz/corpus/8e053980cb3e6f47e74cc8f2bdeae555e8fea559-3
@@ -0,0 +1 @@
+v=spf1 redirect=%{d4027755927159263581}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/8e59eb0d01a975d66f10113cdbaa95304313e420-12 b/testdata/fuzz/corpus/8e59eb0d01a975d66f10113cdbaa95304313e420-12
new file mode 100644
index 0000000..64f4c93
--- /dev/null
+++ b/testdata/fuzz/corpus/8e59eb0d01a975d66f10113cdbaa95304313e420-12
@@ -0,0 +1 @@
+v=spf1 a:%{IR}%{IR} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/9164a7c22279e6b8ff72aea10563c56aa2b13f88 b/testdata/fuzz/corpus/9164a7c22279e6b8ff72aea10563c56aa2b13f88
new file mode 100644
index 0000000..eb3114c
--- /dev/null
+++ b/testdata/fuzz/corpus/9164a7c22279e6b8ff72aea10563c56aa2b13f88
@@ -0,0 +1 @@
+v=spf1 ip6:::1.1.1.1/
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/91c2784bafbbc998e0bd22a4285540852ad966ed b/testdata/fuzz/corpus/91c2784bafbbc998e0bd22a4285540852ad966ed
new file mode 100644
index 0000000..7c353c2
--- /dev/null
+++ b/testdata/fuzz/corpus/91c2784bafbbc998e0bd22a4285540852ad966ed
@@ -0,0 +1 @@
+v=spf1 a:%{h} +
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/92180f784e583d9201c52bcd251686c1ce420493-13 b/testdata/fuzz/corpus/92180f784e583d9201c52bcd251686c1ce420493-13
new file mode 100644
index 0000000..d628f3d
--- /dev/null
+++ b/testdata/fuzz/corpus/92180f784e583d9201c52bcd251686c1ce420493-13
@@ -0,0 +1 @@
+v=spf1 mx:M include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/923156e1b572d3a1a88c85b6f4e0001658257dbe-1 b/testdata/fuzz/corpus/923156e1b572d3a1a88c85b6f4e0001658257dbe-1
new file mode 100644
index 0000000..1e9bd40
--- /dev/null
+++ b/testdata/fuzz/corpus/923156e1b572d3a1a88c85b6f4e0001658257dbe-1
@@ -0,0 +1 @@
+v=spf1 Ἥ
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/9362b24013a5f29755c8140c47724dce20d8aa92 b/testdata/fuzz/corpus/9362b24013a5f29755c8140c47724dce20d8aa92
new file mode 100644
index 0000000..1bcc3bc
--- /dev/null
+++ b/testdata/fuzz/corpus/9362b24013a5f29755c8140c47724dce20d8aa92
@@ -0,0 +1 @@
+v=spf1 ptr -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/9625cf271d4bea92494cc6c08d37605675fdf9fd-1 b/testdata/fuzz/corpus/9625cf271d4bea92494cc6c08d37605675fdf9fd-1
new file mode 100644
index 0000000..0a6cc2d
--- /dev/null
+++ b/testdata/fuzz/corpus/9625cf271d4bea92494cc6c08d37605675fdf9fd-1
@@ -0,0 +1 @@
+v=spf1 mx:%{i}%{i} -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/97c03960e91dde1ab193ea2d82ff742fcc3ddbad-1 b/testdata/fuzz/corpus/97c03960e91dde1ab193ea2d82ff742fcc3ddbad-1
new file mode 100644
index 0000000..260aa43
--- /dev/null
+++ b/testdata/fuzz/corpus/97c03960e91dde1ab193ea2d82ff742fcc3ddbad-1
@@ -0,0 +1 @@
+v=spf1 ip6:::1../
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/97d3dd37d1f19b7bd31b1eac4a6257dba655c41c-1 b/testdata/fuzz/corpus/97d3dd37d1f19b7bd31b1eac4a6257dba655c41c-1
new file mode 100644
index 0000000..de986f3
--- /dev/null
+++ b/testdata/fuzz/corpus/97d3dd37d1f19b7bd31b1eac4a6257dba655c41c-1
@@ -0,0 +1 @@
+v=spf1 mx/355271367880050092935562133789062533
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/97d69f2939425aec568d67ad8617d134cd9d2965 b/testdata/fuzz/corpus/97d69f2939425aec568d67ad8617d134cd9d2965
new file mode 100644
index 0000000..875de6d
--- /dev/null
+++ b/testdata/fuzz/corpus/97d69f2939425aec568d67ad8617d134cd9d2965
@@ -0,0 +1 @@
+v=spf1 mx:%{fff}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/98cc679b25e4a323f7023b3e53fbf770030528c5-4 b/testdata/fuzz/corpus/98cc679b25e4a323f7023b3e53fbf770030528c5-4
new file mode 100644
index 0000000..91ba5dd
--- /dev/null
+++ b/testdata/fuzz/corpus/98cc679b25e4a323f7023b3e53fbf770030528c5-4
@@ -0,0 +1 @@
+v=spf1 ip6:1:b:6:1:b:6:1:8:8
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/9aaf904c7427b850ea7a57316cf41c4e5d34a1a5-12 b/testdata/fuzz/corpus/9aaf904c7427b850ea7a57316cf41c4e5d34a1a5-12
new file mode 100644
index 0000000..2774c39
--- /dev/null
+++ b/testdata/fuzz/corpus/9aaf904c7427b850ea7a57316cf41c4e5d34a1a5-12
@@ -0,0 +1 @@
+v=spf1 \xd2mx: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/9abcdf6390b0613fff3e3decb747d6e93a89a36a b/testdata/fuzz/corpus/9abcdf6390b0613fff3e3decb747d6e93a89a36a
new file mode 100644
index 0000000..39f8472
--- /dev/null
+++ b/testdata/fuzz/corpus/9abcdf6390b0613fff3e3decb747d6e93a89a36a
@@ -0,0 +1 @@
+v=spf1 mx mx a mx a mx a ptr a
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/9cf1b9b09464e4499ed3dcb2d9140f85bc1a9ca1-13 b/testdata/fuzz/corpus/9cf1b9b09464e4499ed3dcb2d9140f85bc1a9ca1-13
new file mode 100644
index 0000000..6f8011c
--- /dev/null
+++ b/testdata/fuzz/corpus/9cf1b9b09464e4499ed3dcb2d9140f85bc1a9ca1-13
@@ -0,0 +1 @@
+v=spf1 a:%{p}%{p} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/9e319cac94086116535095207d04b5c224e59526-15 b/testdata/fuzz/corpus/9e319cac94086116535095207d04b5c224e59526-15
new file mode 100644
index 0000000..3c951b9
--- /dev/null
+++ b/testdata/fuzz/corpus/9e319cac94086116535095207d04b5c224e59526-15
@@ -0,0 +1 @@
+v=spf1 a:d6660//128 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/9f4f35b562b1335d5226eb15f579b40f78902b08 b/testdata/fuzz/corpus/9f4f35b562b1335d5226eb15f579b40f78902b08
new file mode 100644
index 0000000..ed58fe9
--- /dev/null
+++ b/testdata/fuzz/corpus/9f4f35b562b1335d5226eb15f579b40f78902b08
@@ -0,0 +1 @@
+v=spf1 0a: -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/9f971c708dcddd95fad64e2cce4b5a3beff74e55-16 b/testdata/fuzz/corpus/9f971c708dcddd95fad64e2cce4b5a3beff74e55-16
new file mode 100644
index 0000000..a1bb1f6
--- /dev/null
+++ b/testdata/fuzz/corpus/9f971c708dcddd95fad64e2cce4b5a3beff74e55-16
@@ -0,0 +1 @@
+v=spf1 ip6:1::1/6 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/a1c703c19dcb0dd1393a1aa550dab9d22064411a-13 b/testdata/fuzz/corpus/a1c703c19dcb0dd1393a1aa550dab9d22064411a-13
new file mode 100644
index 0000000..e170657
--- /dev/null
+++ b/testdata/fuzz/corpus/a1c703c19dcb0dd1393a1aa550dab9d22064411a-13
@@ -0,0 +1 @@
+v=spf1 a:%{V}%{V}%{V}%{V} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/a4501217ce3dd66c7722843d546ac04d8157d655-5 b/testdata/fuzz/corpus/a4501217ce3dd66c7722843d546ac04d8157d655-5
new file mode 100644
index 0000000..7d338ea
--- /dev/null
+++ b/testdata/fuzz/corpus/a4501217ce3dd66c7722843d546ac04d8157d655-5
@@ -0,0 +1 @@
+v=spf1 ip6:CF:CAFE:BAF:CAFE:BEBABEi
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/a5555f3e52f2a50dc83da59781278cab8af8f43a-1 b/testdata/fuzz/corpus/a5555f3e52f2a50dc83da59781278cab8af8f43a-1
new file mode 100644
index 0000000..50e5646
--- /dev/null
+++ b/testdata/fuzz/corpus/a5555f3e52f2a50dc83da59781278cab8af8f43a-1
@@ -0,0 +1 @@
+v=spf1 ip6:1.1
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/a7446b3e3a4aed6193665967f0857bc9a62a3715-3 b/testdata/fuzz/corpus/a7446b3e3a4aed6193665967f0857bc9a62a3715-3
new file mode 100644
index 0000000..da08d9f
--- /dev/null
+++ b/testdata/fuzz/corpus/a7446b3e3a4aed6193665967f0857bc9a62a3715-3
@@ -0,0 +1 @@
+v=spf1 exists:%{645149230}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/a8865f15dc42b146da6aad2fc9f74eae1dd255fd-19 b/testdata/fuzz/corpus/a8865f15dc42b146da6aad2fc9f74eae1dd255fd-19
new file mode 100644
index 0000000..938511d
--- /dev/null
+++ b/testdata/fuzz/corpus/a8865f15dc42b146da6aad2fc9f74eae1dd255fd-19
@@ -0,0 +1 @@
+v=spf1 ptr ptr ptr ptr ptr ptr include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/a911eff5c6cd79e98ead8dfabd2d4e6f468e6837-2 b/testdata/fuzz/corpus/a911eff5c6cd79e98ead8dfabd2d4e6f468e6837-2
new file mode 100644
index 0000000..f0b5b44
--- /dev/null
+++ b/testdata/fuzz/corpus/a911eff5c6cd79e98ead8dfabd2d4e6f468e6837-2
@@ -0,0 +1 @@
+v=spf1 ip6:eff:ffff:ffff:ffff:ffff:ffff:ffff
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/a93f5beaa58d9a1a6524ef74a724d1af206a3bfa b/testdata/fuzz/corpus/a93f5beaa58d9a1a6524ef74a724d1af206a3bfa
new file mode 100644
index 0000000..dee895b
--- /dev/null
+++ b/testdata/fuzz/corpus/a93f5beaa58d9a1a6524ef74a724d1af206a3bfa
@@ -0,0 +1 @@
+v=spf1 include:/
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/a9895ef31ad26725518daeeaf172dd8434b7b926 b/testdata/fuzz/corpus/a9895ef31ad26725518daeeaf172dd8434b7b926
new file mode 100644
index 0000000..f644350
--- /dev/null
+++ b/testdata/fuzz/corpus/a9895ef31ad26725518daeeaf172dd8434b7b926
@@ -0,0 +1 @@
+v=spf1 exists:%{p}.should.example.com exists:%{p}.ok.example.com
diff --git a/testdata/fuzz/corpus/a9f36515a6f362c384c12c7633f7d940204833a7 b/testdata/fuzz/corpus/a9f36515a6f362c384c12c7633f7d940204833a7
new file mode 100644
index 0000000..671d5e8
--- /dev/null
+++ b/testdata/fuzz/corpus/a9f36515a6f362c384c12c7633f7d940204833a7
@@ -0,0 +1 @@
+v=spf1 mx:d6660//100
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/aa540d18eefc008c3114d2b93278edc1be1ff1f3-1 b/testdata/fuzz/corpus/aa540d18eefc008c3114d2b93278edc1be1ff1f3-1
new file mode 100644
index 0000000..88fd16e
--- /dev/null
+++ b/testdata/fuzz/corpus/aa540d18eefc008c3114d2b93278edc1be1ff1f3-1
@@ -0,0 +1 @@
+v=spf1 ip6:2001:db8:2001:db::1f1 ip6:2001:db8:8
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/aa6c9169f459f167c749030c9d1987afd3d6cd74-12 b/testdata/fuzz/corpus/aa6c9169f459f167c749030c9d1987afd3d6cd74-12
new file mode 100644
index 0000000..fdafbb3
--- /dev/null
+++ b/testdata/fuzz/corpus/aa6c9169f459f167c749030c9d1987afd3d6cd74-12
@@ -0,0 +1 @@
+v=spf1 ip6:::1 ip6:e::0/4 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ab1143a7650029d54d16c3086123cf8c62ae0e03-14 b/testdata/fuzz/corpus/ab1143a7650029d54d16c3086123cf8c62ae0e03-14
new file mode 100644
index 0000000..8dc6772
--- /dev/null
+++ b/testdata/fuzz/corpus/ab1143a7650029d54d16c3086123cf8c62ae0e03-14
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4 ip6:::/4 ip4:1.2.3.4 ip6:::/4 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ac6f486856003dabf941a7b559667829730f4b85 b/testdata/fuzz/corpus/ac6f486856003dabf941a7b559667829730f4b85
new file mode 100644
index 0000000..0e90f7f
--- /dev/null
+++ b/testdata/fuzz/corpus/ac6f486856003dabf941a7b559667829730f4b85
@@ -0,0 +1 @@
+v=spf1 ip6::/
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/acca12db014f6aea3028a84f6c5866f647b2d4cc b/testdata/fuzz/corpus/acca12db014f6aea3028a84f6c5866f647b2d4cc
new file mode 100644
index 0000000..b9586e1
--- /dev/null
+++ b/testdata/fuzz/corpus/acca12db014f6aea3028a84f6c5866f647b2d4cc
@@ -0,0 +1 @@
+v=spf1 redirect=%}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/accc8bc507abbfb1ec387e67d264bd2663eebfb7 b/testdata/fuzz/corpus/accc8bc507abbfb1ec387e67d264bd2663eebfb7
new file mode 100644
index 0000000..f3f66b2
--- /dev/null
+++ b/testdata/fuzz/corpus/accc8bc507abbfb1ec387e67d264bd2663eebfb7
@@ -0,0 +1 @@
+v=spf1 -a: +
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/acd182846170dcef1c7546d4ab6a98490796f113-2 b/testdata/fuzz/corpus/acd182846170dcef1c7546d4ab6a98490796f113-2
new file mode 100644
index 0000000..2425c3a
--- /dev/null
+++ b/testdata/fuzz/corpus/acd182846170dcef1c7546d4ab6a98490796f113-2
@@ -0,0 +1 @@
+v=spf1 ip6:1::1 ip6:1::8
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ad152c49557a64647f046f959dcc68bf93658dc3 b/testdata/fuzz/corpus/ad152c49557a64647f046f959dcc68bf93658dc3
new file mode 100644
index 0000000..714a743
--- /dev/null
+++ b/testdata/fuzz/corpus/ad152c49557a64647f046f959dcc68bf93658dc3
@@ -0,0 +1 @@
+v=spf1 ip6:Cafe:Babe:0::
diff --git a/testdata/fuzz/corpus/ae8ea51dda8860b90e3f7caae055efc79af00d1d-2 b/testdata/fuzz/corpus/ae8ea51dda8860b90e3f7caae055efc79af00d1d-2
new file mode 100644
index 0000000..c00a34a
--- /dev/null
+++ b/testdata/fuzz/corpus/ae8ea51dda8860b90e3f7caae055efc79af00d1d-2
@@ -0,0 +1 @@
+v=spf1 mx:%{{\xffi} -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b0e49cd5a0eea69e8e80d9e712acbd263cbf0568-13 b/testdata/fuzz/corpus/b0e49cd5a0eea69e8e80d9e712acbd263cbf0568-13
new file mode 100644
index 0000000..3ffa06e
--- /dev/null
+++ b/testdata/fuzz/corpus/b0e49cd5a0eea69e8e80d9e712acbd263cbf0568-13
@@ -0,0 +1 @@
+v=spf1 ip6:::1 ip6:::0 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b0f5dc28d923c125a2f3eb76f7502201ace60e7c-12 b/testdata/fuzz/corpus/b0f5dc28d923c125a2f3eb76f7502201ace60e7c-12
new file mode 100644
index 0000000..94617cc
--- /dev/null
+++ b/testdata/fuzz/corpus/b0f5dc28d923c125a2f3eb76f7502201ace60e7c-12
@@ -0,0 +1 @@
+v=spf1 mx//1 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b100873d47c1870d8711f29c28431fea30c4ec4c-1 b/testdata/fuzz/corpus/b100873d47c1870d8711f29c28431fea30c4ec4c-1
new file mode 100644
index 0000000..df85be1
--- /dev/null
+++ b/testdata/fuzz/corpus/b100873d47c1870d8711f29c28431fea30c4ec4c-1
@@ -0,0 +1 @@
+v=spf1 ip6:2001:29538
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b145fe0a881625a35bab0b433476a0c021165c61-1 b/testdata/fuzz/corpus/b145fe0a881625a35bab0b433476a0c021165c61-1
new file mode 100644
index 0000000..a1d1fcb
--- /dev/null
+++ b/testdata/fuzz/corpus/b145fe0a881625a35bab0b433476a0c021165c61-1
@@ -0,0 +1 @@
+v=spf1 a:%%%%%%
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b15a623eeb971a4e7734a44a7e8ed23e87963af4-1 b/testdata/fuzz/corpus/b15a623eeb971a4e7734a44a7e8ed23e87963af4-1
new file mode 100644
index 0000000..b43eb54
--- /dev/null
+++ b/testdata/fuzz/corpus/b15a623eeb971a4e7734a44a7e8ed23e87963af4-1
@@ -0,0 +1 @@
+v=spf1 aaoaeaeam
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b17aa7e8ad6c575f52c22192fc3fd1eec24e997c-16 b/testdata/fuzz/corpus/b17aa7e8ad6c575f52c22192fc3fd1eec24e997c-16
new file mode 100644
index 0000000..da98d32
--- /dev/null
+++ b/testdata/fuzz/corpus/b17aa7e8ad6c575f52c22192fc3fd1eec24e997c-16
@@ -0,0 +1 @@
+v=spf1 ip6:1::1 ip6:1::b include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b2ce5c9c42e721bded3c31f0438bf9d366636ece-2 b/testdata/fuzz/corpus/b2ce5c9c42e721bded3c31f0438bf9d366636ece-2
new file mode 100644
index 0000000..322e501
--- /dev/null
+++ b/testdata/fuzz/corpus/b2ce5c9c42e721bded3c31f0438bf9d366636ece-2
@@ -0,0 +1 @@
+v=spf1 redirect=%{da}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b2d7f31602f04aa2ab5287fd1a47262719c8b66e b/testdata/fuzz/corpus/b2d7f31602f04aa2ab5287fd1a47262719c8b66e
new file mode 100644
index 0000000..432aaa3
--- /dev/null
+++ b/testdata/fuzz/corpus/b2d7f31602f04aa2ab5287fd1a47262719c8b66e
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4/32 -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b307e1380f2f39d76abefed30d6272c44624f8b7-4 b/testdata/fuzz/corpus/b307e1380f2f39d76abefed30d6272c44624f8b7-4
new file mode 100644
index 0000000..a8a666c
--- /dev/null
+++ b/testdata/fuzz/corpus/b307e1380f2f39d76abefed30d6272c44624f8b7-4
@@ -0,0 +1 @@
+v=spf1 exp= redirect=%{D}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b36467ce1bf29b7c3258c6e0ea1987c5e0989ac4-13 b/testdata/fuzz/corpus/b36467ce1bf29b7c3258c6e0ea1987c5e0989ac4-13
new file mode 100644
index 0000000..3b31eff
--- /dev/null
+++ b/testdata/fuzz/corpus/b36467ce1bf29b7c3258c6e0ea1987c5e0989ac4-13
@@ -0,0 +1 @@
+v=spf1 mx:d6660//1 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b488275d23ef85adb645e037d8f7524ac51b3e5f b/testdata/fuzz/corpus/b488275d23ef85adb645e037d8f7524ac51b3e5f
new file mode 100644
index 0000000..f4a73a8
--- /dev/null
+++ b/testdata/fuzz/corpus/b488275d23ef85adb645e037d8f7524ac51b3e5f
@@ -0,0 +1 @@
+v=spf1 redirect=doesnotexist
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b5a98679ef576a7410544e1e367ecd869cbc56ee-7 b/testdata/fuzz/corpus/b5a98679ef576a7410544e1e367ecd869cbc56ee-7
new file mode 100644
index 0000000..54299ef
--- /dev/null
+++ b/testdata/fuzz/corpus/b5a98679ef576a7410544e1e367ecd869cbc56ee-7
@@ -0,0 +1 @@
+v=spf1 \xbdptr: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b6507f7406c96d99dd64e849129d39069c85f9a9-11 b/testdata/fuzz/corpus/b6507f7406c96d99dd64e849129d39069c85f9a9-11
new file mode 100644
index 0000000..8987cdc
--- /dev/null
+++ b/testdata/fuzz/corpus/b6507f7406c96d99dd64e849129d39069c85f9a9-11
@@ -0,0 +1 @@
+v=spf1 a:%{I}%{i}%{i}%{i} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b817cf09acdda44e8d910c19dd59a705ea223067-14 b/testdata/fuzz/corpus/b817cf09acdda44e8d910c19dd59a705ea223067-14
new file mode 100644
index 0000000..2cf3b03
--- /dev/null
+++ b/testdata/fuzz/corpus/b817cf09acdda44e8d910c19dd59a705ea223067-14
@@ -0,0 +1 @@
+v=spf1 a:d6666 a:d1111
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b8855d0c786eba4683fbf8cde3459b8a9101d2ea-8 b/testdata/fuzz/corpus/b8855d0c786eba4683fbf8cde3459b8a9101d2ea-8
new file mode 100644
index 0000000..a4c5861
--- /dev/null
+++ b/testdata/fuzz/corpus/b8855d0c786eba4683fbf8cde3459b8a9101d2ea-8
@@ -0,0 +1 @@
+v=spf1 a/1107_86564func2cont
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/b8d0e747da40b2501b1c2c39ed3bcd1e9c7c46d8-1 b/testdata/fuzz/corpus/b8d0e747da40b2501b1c2c39ed3bcd1e9c7c46d8-1
new file mode 100644
index 0000000..4a4e4d9
--- /dev/null
+++ b/testdata/fuzz/corpus/b8d0e747da40b2501b1c2c39ed3bcd1e9c7c46d8-1
@@ -0,0 +1 @@
+v=spf1 redirect=
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/bc54f7f235fbe4eb55a7066dfe301b396bc1c634 b/testdata/fuzz/corpus/bc54f7f235fbe4eb55a7066dfe301b396bc1c634
new file mode 100644
index 0000000..6a50790
--- /dev/null
+++ b/testdata/fuzz/corpus/bc54f7f235fbe4eb55a7066dfe301b396bc1c634
@@ -0,0 +1 @@
+v=spf1 mx -al
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/bd74e6de533aa3f9d3a9ff0694639bac7cef1a02-3 b/testdata/fuzz/corpus/bd74e6de533aa3f9d3a9ff0694639bac7cef1a02-3
new file mode 100644
index 0000000..4515464
--- /dev/null
+++ b/testdata/fuzz/corpus/bd74e6de533aa3f9d3a9ff0694639bac7cef1a02-3
@@ -0,0 +1 @@
+v=spf1 redirect=%{daAFAE}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/bf8b39b3f7dc8b62718454e41a18b3fdf166b52a-14 b/testdata/fuzz/corpus/bf8b39b3f7dc8b62718454e41a18b3fdf166b52a-14
new file mode 100644
index 0000000..6ac5b0b
--- /dev/null
+++ b/testdata/fuzz/corpus/bf8b39b3f7dc8b62718454e41a18b3fdf166b52a-14
@@ -0,0 +1 @@
+v=spf1 a:%{s}%{s}%{S}%{s}%{s}%{S}%{s} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/c1210ffd398a720b89fa9b2fd7d071c759848ccc-13 b/testdata/fuzz/corpus/c1210ffd398a720b89fa9b2fd7d071c759848ccc-13
new file mode 100644
index 0000000..fd3b3ef
--- /dev/null
+++ b/testdata/fuzz/corpus/c1210ffd398a720b89fa9b2fd7d071c759848ccc-13
@@ -0,0 +1 @@
+v=spf1 a:%{I}%{I}%{I}%{I} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/c19da7619ae805156926cde722e4753648e555b4-1 b/testdata/fuzz/corpus/c19da7619ae805156926cde722e4753648e555b4-1
new file mode 100644
index 0000000..a3be7f3
--- /dev/null
+++ b/testdata/fuzz/corpus/c19da7619ae805156926cde722e4753648e555b4-1
@@ -0,0 +1 @@
+v=spf1 ip6:e::0::
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/c2672e5a51b373fa65f8edf478576d4cdbe5a09b-1 b/testdata/fuzz/corpus/c2672e5a51b373fa65f8edf478576d4cdbe5a09b-1
new file mode 100644
index 0000000..8f3cd9b
--- /dev/null
+++ b/testdata/fuzz/corpus/c2672e5a51b373fa65f8edf478576d4cdbe5a09b-1
@@ -0,0 +1 @@
+v=spf1 ip6:CAFE:BABEE
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/c4f22db76ae464b5239fb7761091382756c3f3b6 b/testdata/fuzz/corpus/c4f22db76ae464b5239fb7761091382756c3f3b6
new file mode 100644
index 0000000..0b6c5a2
--- /dev/null
+++ b/testdata/fuzz/corpus/c4f22db76ae464b5239fb7761091382756c3f3b6
@@ -0,0 +1 @@
+v=spf1 a:%}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/c58d87a54c389bab92d1f4a209adc75523fc7574-2 b/testdata/fuzz/corpus/c58d87a54c389bab92d1f4a209adc75523fc7574-2
new file mode 100644
index 0000000..3695fec
--- /dev/null
+++ b/testdata/fuzz/corpus/c58d87a54c389bab92d1f4a209adc75523fc7574-2
@@ -0,0 +1 @@
+v=spf1 exists:%{i645149230r}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/c642abd702594b1bef94016873d29be7c3426428 b/testdata/fuzz/corpus/c642abd702594b1bef94016873d29be7c3426428
new file mode 100644
index 0000000..f560022
--- /dev/null
+++ b/testdata/fuzz/corpus/c642abd702594b1bef94016873d29be7c3426428
@@ -0,0 +1 @@
+v=spf1 ptr:aal
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/c6e2ae81a2d096b2e9faf154beb78f8aaf715cff b/testdata/fuzz/corpus/c6e2ae81a2d096b2e9faf154beb78f8aaf715cff
new file mode 100644
index 0000000..565f1cb
--- /dev/null
+++ b/testdata/fuzz/corpus/c6e2ae81a2d096b2e9faf154beb78f8aaf715cff
@@ -0,0 +1 @@
+v=spf1 ip4:1.3
diff --git a/testdata/fuzz/corpus/c891ebdca240564cd6be85db7ec4f2419cca1560-1 b/testdata/fuzz/corpus/c891ebdca240564cd6be85db7ec4f2419cca1560-1
new file mode 100644
index 0000000..effe417
--- /dev/null
+++ b/testdata/fuzz/corpus/c891ebdca240564cd6be85db7ec4f2419cca1560-1
@@ -0,0 +1 @@
+v=spf1 ip6:::E
diff --git a/testdata/fuzz/corpus/c8d66f4be86f0a428754e8150fae408f21421bb8-13 b/testdata/fuzz/corpus/c8d66f4be86f0a428754e8150fae408f21421bb8-13
new file mode 100644
index 0000000..63dc666
--- /dev/null
+++ b/testdata/fuzz/corpus/c8d66f4be86f0a428754e8150fae408f21421bb8-13
@@ -0,0 +1 @@
+v=spf1 a:%{s}%{s}%{s}%{s} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/c8f75ab19304bff1037246dfbafe8e5903bb90cc-2 b/testdata/fuzz/corpus/c8f75ab19304bff1037246dfbafe8e5903bb90cc-2
new file mode 100644
index 0000000..a816499
--- /dev/null
+++ b/testdata/fuzz/corpus/c8f75ab19304bff1037246dfbafe8e5903bb90cc-2
@@ -0,0 +1 @@
+v=spf1 mx:%{{{\x8a\x9e\xf5\xa8ji} -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/c960d3112bff1a12d9bfe4f7e6ea1dd8c114e7d6 b/testdata/fuzz/corpus/c960d3112bff1a12d9bfe4f7e6ea1dd8c114e7d6
new file mode 100644
index 0000000..7ab9876
--- /dev/null
+++ b/testdata/fuzz/corpus/c960d3112bff1a12d9bfe4f7e6ea1dd8c114e7d6
@@ -0,0 +1 @@
+v=spf1 redirect= redirect=
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/c989438a20e09ca08d8d0a8bc3f3ff6e788aec7b-12 b/testdata/fuzz/corpus/c989438a20e09ca08d8d0a8bc3f3ff6e788aec7b-12
new file mode 100644
index 0000000..0403b21
--- /dev/null
+++ b/testdata/fuzz/corpus/c989438a20e09ca08d8d0a8bc3f3ff6e788aec7b-12
@@ -0,0 +1 @@
+v=spf1 a:%{I}%{I}%{I} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ca425f5a4795eda3ba095d08f2fed2b9b56e294d b/testdata/fuzz/corpus/ca425f5a4795eda3ba095d08f2fed2b9b56e294d
new file mode 100644
index 0000000..c070b86
--- /dev/null
+++ b/testdata/fuzz/corpus/ca425f5a4795eda3ba095d08f2fed2b9b56e294d
@@ -0,0 +1 @@
+v=spf1 a:ooo-%{o}-ooo
diff --git a/testdata/fuzz/corpus/cb2c25e688500463cbd57cccaf4651bd985b411e-14 b/testdata/fuzz/corpus/cb2c25e688500463cbd57cccaf4651bd985b411e-14
new file mode 100644
index 0000000..d6a513a
--- /dev/null
+++ b/testdata/fuzz/corpus/cb2c25e688500463cbd57cccaf4651bd985b411e-14
@@ -0,0 +1 @@
+v=spf1 ip6:1::1 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/cb9c9d95ff6e8ad02f6dfa35614c56ee3ef8e70b b/testdata/fuzz/corpus/cb9c9d95ff6e8ad02f6dfa35614c56ee3ef8e70b
new file mode 100644
index 0000000..362ae19
--- /dev/null
+++ b/testdata/fuzz/corpus/cb9c9d95ff6e8ad02f6dfa35614c56ee3ef8e70b
@@ -0,0 +1 @@
+v=spf1 exists:d1111
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/cc6bc932909f1589479e1129791402e99ffe2b98-11 b/testdata/fuzz/corpus/cc6bc932909f1589479e1129791402e99ffe2b98-11
new file mode 100644
index 0000000..27ede7a
--- /dev/null
+++ b/testdata/fuzz/corpus/cc6bc932909f1589479e1129791402e99ffe2b98-11
@@ -0,0 +1 @@
+v=spf1 a:%{I=}%{I=} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/cc9dc2f9d4124f385fb9589c57d26388ac1d584e-11 b/testdata/fuzz/corpus/cc9dc2f9d4124f385fb9589c57d26388ac1d584e-11
new file mode 100644
index 0000000..24a733c
--- /dev/null
+++ b/testdata/fuzz/corpus/cc9dc2f9d4124f385fb9589c57d26388ac1d584e-11
@@ -0,0 +1 @@
+v=spf1 a:%{s} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/cdd60476f4ef91a97ff0161196731409d8dc4187-15 b/testdata/fuzz/corpus/cdd60476f4ef91a97ff0161196731409d8dc4187-15
new file mode 100644
index 0000000..1473af8
--- /dev/null
+++ b/testdata/fuzz/corpus/cdd60476f4ef91a97ff0161196731409d8dc4187-15
@@ -0,0 +1 @@
+v=spf1 a:%{i0490116119384765625} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ce2c5d5257e32149064eb16f95ca854373d7bae3-12 b/testdata/fuzz/corpus/ce2c5d5257e32149064eb16f95ca854373d7bae3-12
new file mode 100644
index 0000000..a13b597
--- /dev/null
+++ b/testdata/fuzz/corpus/ce2c5d5257e32149064eb16f95ca854373d7bae3-12
@@ -0,0 +1 @@
+v=spf1 a:%-%- include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ce47ddf5b00c777dbf2214a2d8ac4579127464d0 b/testdata/fuzz/corpus/ce47ddf5b00c777dbf2214a2d8ac4579127464d0
new file mode 100644
index 0000000..0a43492
--- /dev/null
+++ b/testdata/fuzz/corpus/ce47ddf5b00c777dbf2214a2d8ac4579127464d0
@@ -0,0 +1 @@
+v=spf1 include:ipexamplecomall
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ce5296fce5bbc097e72fea0331519a92290a56be-13 b/testdata/fuzz/corpus/ce5296fce5bbc097e72fea0331519a92290a56be-13
new file mode 100644
index 0000000..d6d204e
--- /dev/null
+++ b/testdata/fuzz/corpus/ce5296fce5bbc097e72fea0331519a92290a56be-13
@@ -0,0 +1 @@
+v=spf1 MX include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ce5b33baf137d522804df44ba49054ed0c99d86e b/testdata/fuzz/corpus/ce5b33baf137d522804df44ba49054ed0c99d86e
new file mode 100644
index 0000000..b01fcff
--- /dev/null
+++ b/testdata/fuzz/corpus/ce5b33baf137d522804df44ba49054ed0c99d86e
@@ -0,0 +1 @@
+v=spf1 ip6:CAFE:BABE:0::
diff --git a/testdata/fuzz/corpus/ce91e7bf355c66eb7b54bd9eec6f9c3e1128abfa b/testdata/fuzz/corpus/ce91e7bf355c66eb7b54bd9eec6f9c3e1128abfa
new file mode 100644
index 0000000..f5a0d1b
--- /dev/null
+++ b/testdata/fuzz/corpus/ce91e7bf355c66eb7b54bd9eec6f9c3e1128abfa
@@ -0,0 +1 @@
+v=spf1 exists:%{l2r-}%{d2}%{l2r-}%{d2}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/cee815b2b87629959c5aaf8d9529de4302365eaf-11 b/testdata/fuzz/corpus/cee815b2b87629959c5aaf8d9529de4302365eaf-11
new file mode 100644
index 0000000..89598d4
--- /dev/null
+++ b/testdata/fuzz/corpus/cee815b2b87629959c5aaf8d9529de4302365eaf-11
@@ -0,0 +1 @@
+v=spf1 a:%{IR} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/d127e98987abe4687f4aac11b2405cf2028d9d7b-6 b/testdata/fuzz/corpus/d127e98987abe4687f4aac11b2405cf2028d9d7b-6
new file mode 100644
index 0000000..7058a9e
--- /dev/null
+++ b/testdata/fuzz/corpus/d127e98987abe4687f4aac11b2405cf2028d9d7b-6
@@ -0,0 +1 @@
+v=spf1 exp= exp= exp= exp= redirect=%{D}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/d1f256c13fc6d25a1ce60bee676bdc6dbf370b17-14 b/testdata/fuzz/corpus/d1f256c13fc6d25a1ce60bee676bdc6dbf370b17-14
new file mode 100644
index 0000000..a365e22
--- /dev/null
+++ b/testdata/fuzz/corpus/d1f256c13fc6d25a1ce60bee676bdc6dbf370b17-14
@@ -0,0 +1 @@
+v=spf1 a:%{I}%{I}%{I}%{I}%{I} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/d4f0fe1f081eee99d09ec18d0320e49421d796be-2 b/testdata/fuzz/corpus/d4f0fe1f081eee99d09ec18d0320e49421d796be-2
new file mode 100644
index 0000000..6e72a96
--- /dev/null
+++ b/testdata/fuzz/corpus/d4f0fe1f081eee99d09ec18d0320e49421d796be-2
@@ -0,0 +1 @@
+v=spf1 redirect=%{h}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/d5032b820a2b0b9e853b55878217fa9d262a314f-13 b/testdata/fuzz/corpus/d5032b820a2b0b9e853b55878217fa9d262a314f-13
new file mode 100644
index 0000000..4b4ae6d
--- /dev/null
+++ b/testdata/fuzz/corpus/d5032b820a2b0b9e853b55878217fa9d262a314f-13
@@ -0,0 +1 @@
+v=spf1 a:%-%-%-%- include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/d50ae4884ceef9773629d9dda6a742e631fd4b04-1 b/testdata/fuzz/corpus/d50ae4884ceef9773629d9dda6a742e631fd4b04-1
new file mode 100644
index 0000000..ef08b2a
--- /dev/null
+++ b/testdata/fuzz/corpus/d50ae4884ceef9773629d9dda6a742e631fd4b04-1
@@ -0,0 +1 @@
+v=spf1 ptr:
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/d72da001152934c26ffdc5f09b8e6930a6029bf2 b/testdata/fuzz/corpus/d72da001152934c26ffdc5f09b8e6930a6029bf2
new file mode 100644
index 0000000..8bd9d4a
--- /dev/null
+++ b/testdata/fuzz/corpus/d72da001152934c26ffdc5f09b8e6930a6029bf2
@@ -0,0 +1 @@
+v=spf1 a a a a a a a 
diff --git a/testdata/fuzz/corpus/d77c09dca3ad4265127e3cb9ab223a51af746e2f-3 b/testdata/fuzz/corpus/d77c09dca3ad4265127e3cb9ab223a51af746e2f-3
new file mode 100644
index 0000000..43a0608
--- /dev/null
+++ b/testdata/fuzz/corpus/d77c09dca3ad4265127e3cb9ab223a51af746e2f-3
@@ -0,0 +1 @@
+v=spf1 ip6:CAFE:BABEi
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/dbf895f600893e37727da6399b4285606db5f526-12 b/testdata/fuzz/corpus/dbf895f600893e37727da6399b4285606db5f526-12
new file mode 100644
index 0000000..58b84c7
--- /dev/null
+++ b/testdata/fuzz/corpus/dbf895f600893e37727da6399b4285606db5f526-12
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4/31 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/dc0b19445201ed2c3996cdc6f3c244ee9f652f35-1 b/testdata/fuzz/corpus/dc0b19445201ed2c3996cdc6f3c244ee9f652f35-1
new file mode 100644
index 0000000..071610b
--- /dev/null
+++ b/testdata/fuzz/corpus/dc0b19445201ed2c3996cdc6f3c244ee9f652f35-1
@@ -0,0 +1 @@
+v=spf1 mx:%{S}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/dda2d834936fe89fbd3f55adc62f793c19b5bb9c-1 b/testdata/fuzz/corpus/dda2d834936fe89fbd3f55adc62f793c19b5bb9c-1
new file mode 100644
index 0000000..afb9a5c
--- /dev/null
+++ b/testdata/fuzz/corpus/dda2d834936fe89fbd3f55adc62f793c19b5bb9c-1
@@ -0,0 +1 @@
+v=spf1 a/071862645a4B361qZ_usk_cs__685t____gWGu__k_y-
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/de07275958226e06cd1a914c7f9b9016b61c5b1f-12 b/testdata/fuzz/corpus/de07275958226e06cd1a914c7f9b9016b61c5b1f-12
new file mode 100644
index 0000000..67f3e45
--- /dev/null
+++ b/testdata/fuzz/corpus/de07275958226e06cd1a914c7f9b9016b61c5b1f-12
@@ -0,0 +1 @@
+v=spf1 exists:\x82 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/de4785b5ee386672dbf8e5db8273e0351ea1862b-14 b/testdata/fuzz/corpus/de4785b5ee386672dbf8e5db8273e0351ea1862b-14
new file mode 100644
index 0000000..2da4fcf
--- /dev/null
+++ b/testdata/fuzz/corpus/de4785b5ee386672dbf8e5db8273e0351ea1862b-14
@@ -0,0 +1 @@
+v=spf1 a:%{i1490116119384765625} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/de933a63454be499e4e9bed43e408d3d8e1ff567-18 b/testdata/fuzz/corpus/de933a63454be499e4e9bed43e408d3d8e1ff567-18
new file mode 100644
index 0000000..7b3b9b2
--- /dev/null
+++ b/testdata/fuzz/corpus/de933a63454be499e4e9bed43e408d3d8e1ff567-18
@@ -0,0 +1 @@
+v=spf1 V= include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ded54786ddda6dc0f3ffaf5a73c619c3ff8e4b15-10 b/testdata/fuzz/corpus/ded54786ddda6dc0f3ffaf5a73c619c3ff8e4b15-10
new file mode 100644
index 0000000..254bc94
--- /dev/null
+++ b/testdata/fuzz/corpus/ded54786ddda6dc0f3ffaf5a73c619c3ff8e4b15-10
@@ -0,0 +1 @@
+v=spf1 a/1_7_8107_86564func2
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/dfe0b41c561174c2b49287ef075144ceef8da296-6 b/testdata/fuzz/corpus/dfe0b41c561174c2b49287ef075144ceef8da296-6
new file mode 100644
index 0000000..ba6e016
--- /dev/null
+++ b/testdata/fuzz/corpus/dfe0b41c561174c2b49287ef075144ceef8da296-6
@@ -0,0 +1 @@
+v=spf1 a/0718626H51492305703
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/e02efe936c6ee8076f09724e5bb9e561c953300e-12 b/testdata/fuzz/corpus/e02efe936c6ee8076f09724e5bb9e561c953300e-12
new file mode 100644
index 0000000..7ff6a16
--- /dev/null
+++ b/testdata/fuzz/corpus/e02efe936c6ee8076f09724e5bb9e561c953300e-12
@@ -0,0 +1 @@
+v=spf1 mX: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/e10b4f7eaaad2300375a565a8dae9f2e85608a52-13 b/testdata/fuzz/corpus/e10b4f7eaaad2300375a565a8dae9f2e85608a52-13
new file mode 100644
index 0000000..3d654ba
--- /dev/null
+++ b/testdata/fuzz/corpus/e10b4f7eaaad2300375a565a8dae9f2e85608a52-13
@@ -0,0 +1 @@
+v=spf1 mX: i
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/e28579d8a072e6615a51a0112bee851dc3a1f5fd-4 b/testdata/fuzz/corpus/e28579d8a072e6615a51a0112bee851dc3a1f5fd-4
new file mode 100644
index 0000000..1a061fc
--- /dev/null
+++ b/testdata/fuzz/corpus/e28579d8a072e6615a51a0112bee851dc3a1f5fd-4
@@ -0,0 +1 @@
+v=spf1 redirect=%{l}%{o}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/e2d874886a559a516efd5dc3a169334c7a963b30-12 b/testdata/fuzz/corpus/e2d874886a559a516efd5dc3a169334c7a963b30-12
new file mode 100644
index 0000000..ad579e3
--- /dev/null
+++ b/testdata/fuzz/corpus/e2d874886a559a516efd5dc3a169334c7a963b30-12
@@ -0,0 +1 @@
+v=spf1 mx:d6660 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/e3e07997d1dc92146f6984ff5720fa16894e7c53-9 b/testdata/fuzz/corpus/e3e07997d1dc92146f6984ff5720fa16894e7c53-9
new file mode 100644
index 0000000..0755aa1
--- /dev/null
+++ b/testdata/fuzz/corpus/e3e07997d1dc92146f6984ff5720fa16894e7c53-9
@@ -0,0 +1 @@
+v=spf1 a//4 a/
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/e41fcf365302845c2340ccb398af2cfefb43f232-13 b/testdata/fuzz/corpus/e41fcf365302845c2340ccb398af2cfefb43f232-13
new file mode 100644
index 0000000..3e7ae27
--- /dev/null
+++ b/testdata/fuzz/corpus/e41fcf365302845c2340ccb398af2cfefb43f232-13
@@ -0,0 +1 @@
+v=spf1 a:%{I}%{i}%{i}%{i}%{i}%{i}%{i} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/e57744a0dd15293f65d65428a78b2ee3f130d009 b/testdata/fuzz/corpus/e57744a0dd15293f65d65428a78b2ee3f130d009
new file mode 100644
index 0000000..5e84081
--- /dev/null
+++ b/testdata/fuzz/corpus/e57744a0dd15293f65d65428a78b2ee3f130d009
@@ -0,0 +1 @@
+v=spf1 ip6:2001:db8::68
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/e5880258d09616bbddf50349c7f55002c79b0022-3 b/testdata/fuzz/corpus/e5880258d09616bbddf50349c7f55002c79b0022-3
new file mode 100644
index 0000000..693bc17
--- /dev/null
+++ b/testdata/fuzz/corpus/e5880258d09616bbddf50349c7f55002c79b0022-3
@@ -0,0 +1 @@
+v=spf1 mx:%{{{\x8a\x9e\xf5\xa8j{{\x8a\x9e\xf5\xa8ji} -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/e68c75a01a4dfa8bbba43e271e396726d72c2f5b b/testdata/fuzz/corpus/e68c75a01a4dfa8bbba43e271e396726d72c2f5b
new file mode 100644
index 0000000..4f4f28f
--- /dev/null
+++ b/testdata/fuzz/corpus/e68c75a01a4dfa8bbba43e271e396726d72c2f5b
@@ -0,0 +1 @@
+v=spf1 exp= -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/e69204559a621f21dc8f0e7002fd7fca9a7b8ae8-12 b/testdata/fuzz/corpus/e69204559a621f21dc8f0e7002fd7fca9a7b8ae8-12
new file mode 100644
index 0000000..907a8b9
--- /dev/null
+++ b/testdata/fuzz/corpus/e69204559a621f21dc8f0e7002fd7fca9a7b8ae8-12
@@ -0,0 +1 @@
+v=spf1 ip6:1:: ip6:e:e:0:: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/e73a0dbc0b873c3e1ddf99f0ac22927b1163e7c8-14 b/testdata/fuzz/corpus/e73a0dbc0b873c3e1ddf99f0ac22927b1163e7c8-14
new file mode 100644
index 0000000..505a255
--- /dev/null
+++ b/testdata/fuzz/corpus/e73a0dbc0b873c3e1ddf99f0ac22927b1163e7c8-14
@@ -0,0 +1 @@
+v=spf1 mx:d6660//128 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/e93a4f40a1901c685ac5a409a1f07ba714ef956c-2 b/testdata/fuzz/corpus/e93a4f40a1901c685ac5a409a1f07ba714ef956c-2
new file mode 100644
index 0000000..2f5345b
--- /dev/null
+++ b/testdata/fuzz/corpus/e93a4f40a1901c685ac5a409a1f07ba714ef956c-2
@@ -0,0 +1 @@
+v=spf1 redirect=%{l29030}%{d2}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/e964873ffd42a21f02c1b2248873c0a901365005-1 b/testdata/fuzz/corpus/e964873ffd42a21f02c1b2248873c0a901365005-1
new file mode 100644
index 0000000..c0bf7df
--- /dev/null
+++ b/testdata/fuzz/corpus/e964873ffd42a21f02c1b2248873c0a901365005-1
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4/31 ip4:1.2.3.4/32 2
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ea5be69cc8b6644519c5a167ca753a863b757097 b/testdata/fuzz/corpus/ea5be69cc8b6644519c5a167ca753a863b757097
new file mode 100644
index 0000000..f28e09a
--- /dev/null
+++ b/testdata/fuzz/corpus/ea5be69cc8b6644519c5a167ca753a863b757097
@@ -0,0 +1 @@
+v=spf1 mx:%{l}.%{d}.%{i}.spf.example.net -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ec0f6eace689ed6111acd7ec285057da01a1eb21-18 b/testdata/fuzz/corpus/ec0f6eace689ed6111acd7ec285057da01a1eb21-18
new file mode 100644
index 0000000..32e5440
--- /dev/null
+++ b/testdata/fuzz/corpus/ec0f6eace689ed6111acd7ec285057da01a1eb21-18
@@ -0,0 +1 @@
+v=spf1 ip6::: ip6::: ip6::: ip6::: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ec8282bd3e0bf237005a5a65e6bf5bffbf51e758-1 b/testdata/fuzz/corpus/ec8282bd3e0bf237005a5a65e6bf5bffbf51e758-1
new file mode 100644
index 0000000..677937d
--- /dev/null
+++ b/testdata/fuzz/corpus/ec8282bd3e0bf237005a5a65e6bf5bffbf51e758-1
@@ -0,0 +1 @@
+v=spf1 ip6:e:B
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ec93b5d52903ed882f9f6f24d6ec969012ed55ff-15 b/testdata/fuzz/corpus/ec93b5d52903ed882f9f6f24d6ec969012ed55ff-15
new file mode 100644
index 0000000..3e55447
--- /dev/null
+++ b/testdata/fuzz/corpus/ec93b5d52903ed882f9f6f24d6ec969012ed55ff-15
@@ -0,0 +1 @@
+v=spf1 ip6:::/6 ip6:::/4 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ed29237e59b78657edc357bf1fd4460a66268a5e-5 b/testdata/fuzz/corpus/ed29237e59b78657edc357bf1fd4460a66268a5e-5
new file mode 100644
index 0000000..96b36f2
--- /dev/null
+++ b/testdata/fuzz/corpus/ed29237e59b78657edc357bf1fd4460a66268a5e-5
@@ -0,0 +1 @@
+v=spf1 exp= exp= redirect=%{D}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ee703a3c97844bd923f94fcee3f4b1653c10fb6d-14 b/testdata/fuzz/corpus/ee703a3c97844bd923f94fcee3f4b1653c10fb6d-14
new file mode 100644
index 0000000..1f9647c
--- /dev/null
+++ b/testdata/fuzz/corpus/ee703a3c97844bd923f94fcee3f4b1653c10fb6d-14
@@ -0,0 +1 @@
+v=spf1 ip6:::1:b:6 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/ee8656006a06959c1879616effb85a634b0aca13 b/testdata/fuzz/corpus/ee8656006a06959c1879616effb85a634b0aca13
new file mode 100644
index 0000000..e82a142
--- /dev/null
+++ b/testdata/fuzz/corpus/ee8656006a06959c1879616effb85a634b0aca13
@@ -0,0 +1 @@
+v=spf1 exists:d6660
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/eebf4b0d9b6cc26f1e7ee704bb832dcc7647ac8c-18 b/testdata/fuzz/corpus/eebf4b0d9b6cc26f1e7ee704bb832dcc7647ac8c-18
new file mode 100644
index 0000000..423d630
--- /dev/null
+++ b/testdata/fuzz/corpus/eebf4b0d9b6cc26f1e7ee704bb832dcc7647ac8c-18
@@ -0,0 +1 @@
+v=spf1 ptr ptr ptr ptr ptr include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/efd13ba66006cb10e54fd5c8a2992aa935a8756e b/testdata/fuzz/corpus/efd13ba66006cb10e54fd5c8a2992aa935a8756e
new file mode 100644
index 0000000..868c58e
--- /dev/null
+++ b/testdata/fuzz/corpus/efd13ba66006cb10e54fd5c8a2992aa935a8756e
@@ -0,0 +1 @@
+v=spf1 ip4:1.1.1.1 all
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/f00d320792f2005cc22836f5dffde0be97502329-13 b/testdata/fuzz/corpus/f00d320792f2005cc22836f5dffde0be97502329-13
new file mode 100644
index 0000000..a229f4c
--- /dev/null
+++ b/testdata/fuzz/corpus/f00d320792f2005cc22836f5dffde0be97502329-13
@@ -0,0 +1 @@
+v=spf1 ip6:1:b:6:1:b:6:1:1 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/f0edc684d8e8f6bab6d61c4219dbe9d58d39d326-17 b/testdata/fuzz/corpus/f0edc684d8e8f6bab6d61c4219dbe9d58d39d326-17
new file mode 100644
index 0000000..be21988
--- /dev/null
+++ b/testdata/fuzz/corpus/f0edc684d8e8f6bab6d61c4219dbe9d58d39d326-17
@@ -0,0 +1 @@
+v=spf1 ptr ptr ptr include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/f2ea57ec6f67baa4734129213423b9ebb4cde80b-1 b/testdata/fuzz/corpus/f2ea57ec6f67baa4734129213423b9ebb4cde80b-1
new file mode 100644
index 0000000..d43581c
--- /dev/null
+++ b/testdata/fuzz/corpus/f2ea57ec6f67baa4734129213423b9ebb4cde80b-1
@@ -0,0 +1 @@
+v=spf1 ip4:irect=eexamplecom
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/f350da396279e5e30cf92a6d3204c5220a02ef0a-9 b/testdata/fuzz/corpus/f350da396279e5e30cf92a6d3204c5220a02ef0a-9
new file mode 100644
index 0000000..afb9acf
--- /dev/null
+++ b/testdata/fuzz/corpus/f350da396279e5e30cf92a6d3204c5220a02ef0a-9
@@ -0,0 +1 @@
+v=spf1 a:%{I} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/f37f1e713b1f67e3482d7e866517f016e1a13ce0-10 b/testdata/fuzz/corpus/f37f1e713b1f67e3482d7e866517f016e1a13ce0-10
new file mode 100644
index 0000000..5575042
--- /dev/null
+++ b/testdata/fuzz/corpus/f37f1e713b1f67e3482d7e866517f016e1a13ce0-10
@@ -0,0 +1 @@
+v=spf1 a:%{I=} include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/f3c307e9e0eaf6bd44a3ab6737ee11f342866326-15 b/testdata/fuzz/corpus/f3c307e9e0eaf6bd44a3ab6737ee11f342866326-15
new file mode 100644
index 0000000..8e24292
--- /dev/null
+++ b/testdata/fuzz/corpus/f3c307e9e0eaf6bd44a3ab6737ee11f342866326-15
@@ -0,0 +1 @@
+v=spf1 ip6:1::1:b:6 include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/f40589b11b7e03c9d880bd69b76e01e27c743df3-16 b/testdata/fuzz/corpus/f40589b11b7e03c9d880bd69b76e01e27c743df3-16
new file mode 100644
index 0000000..2f36cc0
--- /dev/null
+++ b/testdata/fuzz/corpus/f40589b11b7e03c9d880bd69b76e01e27c743df3-16
@@ -0,0 +1 @@
+v=spf1 ip6:CF:CAFE:: include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/f57ba6df08bfc3da035f8333e18bc446ba1f0e2d-1 b/testdata/fuzz/corpus/f57ba6df08bfc3da035f8333e18bc446ba1f0e2d-1
new file mode 100644
index 0000000..944f2ba
--- /dev/null
+++ b/testdata/fuzz/corpus/f57ba6df08bfc3da035f8333e18bc446ba1f0e2d-1
@@ -0,0 +1 @@
+v=spf1 ip6:2001db8:
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/f8a1991053a5a58d92e38049974f307b888d6124 b/testdata/fuzz/corpus/f8a1991053a5a58d92e38049974f307b888d6124
new file mode 100644
index 0000000..42b0f26
--- /dev/null
+++ b/testdata/fuzz/corpus/f8a1991053a5a58d92e38049974f307b888d6124
@@ -0,0 +1 @@
+v=spf1 exists:%{l-}.
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/f8e2610fa172fcf57c5a78abc250c624ea258abd-2 b/testdata/fuzz/corpus/f8e2610fa172fcf57c5a78abc250c624ea258abd-2
new file mode 100644
index 0000000..02f02bf
--- /dev/null
+++ b/testdata/fuzz/corpus/f8e2610fa172fcf57c5a78abc250c624ea258abd-2
@@ -0,0 +1 @@
+v=spf1 ip6:1:8:1:b:6:1:8:8
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/f97b07022630b9bb9d443021f67c6616a5e2499b-3 b/testdata/fuzz/corpus/f97b07022630b9bb9d443021f67c6616a5e2499b-3
new file mode 100644
index 0000000..d25ce42
--- /dev/null
+++ b/testdata/fuzz/corpus/f97b07022630b9bb9d443021f67c6616a5e2499b-3
@@ -0,0 +1 @@
+v=spf1 ip6:1::1 ip6:1::1 ip6:1:::
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/fab1282ee7602b9bc7dd8814723a391dc902ad0d-12 b/testdata/fuzz/corpus/fab1282ee7602b9bc7dd8814723a391dc902ad0d-12
new file mode 100644
index 0000000..ec7ff05
--- /dev/null
+++ b/testdata/fuzz/corpus/fab1282ee7602b9bc7dd8814723a391dc902ad0d-12
@@ -0,0 +1 @@
+v=spf1 ip6:1::6/1 a:d1110/1
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/fc7ec2e1564e22897591d02e3abc43245cd46ba1-6 b/testdata/fuzz/corpus/fc7ec2e1564e22897591d02e3abc43245cd46ba1-6
new file mode 100644
index 0000000..3bdac72
--- /dev/null
+++ b/testdata/fuzz/corpus/fc7ec2e1564e22897591d02e3abc43245cd46ba1-6
@@ -0,0 +1 @@
+v=spf1 ptr:\xbd ptr:\xbd include:domain
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/fc9b2b87a881c97370779482229c8b6e56ff43f0-3 b/testdata/fuzz/corpus/fc9b2b87a881c97370779482229c8b6e56ff43f0-3
new file mode 100644
index 0000000..1455c0d
--- /dev/null
+++ b/testdata/fuzz/corpus/fc9b2b87a881c97370779482229c8b6e56ff43f0-3
@@ -0,0 +1 @@
+v=spf1 mx:%{i}%{i}%{363797880709171295166015625i} -
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/fd8c9d87b2d24a6e2d677bc551b32e3fd26cc0a8-18 b/testdata/fuzz/corpus/fd8c9d87b2d24a6e2d677bc551b32e3fd26cc0a8-18
new file mode 100644
index 0000000..8a563e8
--- /dev/null
+++ b/testdata/fuzz/corpus/fd8c9d87b2d24a6e2d677bc551b32e3fd26cc0a8-18
@@ -0,0 +1 @@
+v=spf1 mx:\xf3\x82\x82\xf3\x82\xf3\x82\xf3\x82\xf3\x82\xf3\x82/
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/fe0cfa994f142b9dbbcf323d29affdd09798c1ab b/testdata/fuzz/corpus/fe0cfa994f142b9dbbcf323d29affdd09798c1ab
new file mode 100644
index 0000000..024a080
--- /dev/null
+++ b/testdata/fuzz/corpus/fe0cfa994f142b9dbbcf323d29affdd09798c1ab
@@ -0,0 +1 @@
+v=spf1 mx/33
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/fe256c829f42896f75caaac59f3344d1657770a0-3 b/testdata/fuzz/corpus/fe256c829f42896f75caaac59f3344d1657770a0-3
new file mode 100644
index 0000000..feccf3c
--- /dev/null
+++ b/testdata/fuzz/corpus/fe256c829f42896f75caaac59f3344d1657770a0-3
@@ -0,0 +1 @@
+v=spf1 redirect=%{D}
\ No newline at end of file
diff --git a/testdata/fuzz/corpus/t-044 b/testdata/fuzz/corpus/t-044
new file mode 100644
index 0000000..49c463a
--- /dev/null
+++ b/testdata/fuzz/corpus/t-044
@@ -0,0 +1 @@
+v=spf1 1up=foo
diff --git a/testdata/fuzz/corpus/t-045 b/testdata/fuzz/corpus/t-045
new file mode 100644
index 0000000..1257d7f
--- /dev/null
+++ b/testdata/fuzz/corpus/t-045
@@ -0,0 +1 @@
+v=spf1 a:
diff --git a/testdata/fuzz/corpus/t-046 b/testdata/fuzz/corpus/t-046
new file mode 100644
index 0000000..2cae0d7
--- /dev/null
+++ b/testdata/fuzz/corpus/t-046
@@ -0,0 +1 @@
+v=spf1 a//0 -all
diff --git a/testdata/fuzz/corpus/t-047 b/testdata/fuzz/corpus/t-047
new file mode 100644
index 0000000..710b7f2
--- /dev/null
+++ b/testdata/fuzz/corpus/t-047
@@ -0,0 +1 @@
+v=spf1 a/0 -all
diff --git a/testdata/fuzz/corpus/t-048 b/testdata/fuzz/corpus/t-048
new file mode 100644
index 0000000..26189dd
--- /dev/null
+++ b/testdata/fuzz/corpus/t-048
@@ -0,0 +1 @@
+v=spf1 a:111.222.33.44
diff --git a/testdata/fuzz/corpus/t-049 b/testdata/fuzz/corpus/t-049
new file mode 100644
index 0000000..91270c5
--- /dev/null
+++ b/testdata/fuzz/corpus/t-049
@@ -0,0 +1 @@
+v=spf1 a//129 -all
diff --git a/testdata/fuzz/corpus/t-050 b/testdata/fuzz/corpus/t-050
new file mode 100644
index 0000000..e59ac87
--- /dev/null
+++ b/testdata/fuzz/corpus/t-050
@@ -0,0 +1 @@
+v=spf1 a/24//64 -all
diff --git a/testdata/fuzz/corpus/t-051 b/testdata/fuzz/corpus/t-051
new file mode 100644
index 0000000..f777b8f
--- /dev/null
+++ b/testdata/fuzz/corpus/t-051
@@ -0,0 +1 @@
+v=spf1 a/24/64 -all
diff --git a/testdata/fuzz/corpus/t-052 b/testdata/fuzz/corpus/t-052
new file mode 100644
index 0000000..c0dc761
--- /dev/null
+++ b/testdata/fuzz/corpus/t-052
@@ -0,0 +1 @@
+v=spf1 a/24 -all
diff --git a/testdata/fuzz/corpus/t-053 b/testdata/fuzz/corpus/t-053
new file mode 100644
index 0000000..78e765f
--- /dev/null
+++ b/testdata/fuzz/corpus/t-053
@@ -0,0 +1 @@
+v=spf1 a//33 -all
diff --git a/testdata/fuzz/corpus/t-054 b/testdata/fuzz/corpus/t-054
new file mode 100644
index 0000000..3e78886
--- /dev/null
+++ b/testdata/fuzz/corpus/t-054
@@ -0,0 +1 @@
+v=spf1 a/33 -all
diff --git a/testdata/fuzz/corpus/t-055 b/testdata/fuzz/corpus/t-055
new file mode 100644
index 0000000..cfd1030
--- /dev/null
+++ b/testdata/fuzz/corpus/t-055
@@ -0,0 +1 @@
+v=spf1 a//64 -all
diff --git a/testdata/fuzz/corpus/t-056 b/testdata/fuzz/corpus/t-056
new file mode 100644
index 0000000..ddef903
--- /dev/null
+++ b/testdata/fuzz/corpus/t-056
@@ -0,0 +1 @@
+v=spf1 a:a123456789012345678901234567890123456789012345678901234567890123.example.com -all
diff --git a/testdata/fuzz/corpus/t-057 b/testdata/fuzz/corpus/t-057
new file mode 100644
index 0000000..bf56ef7
--- /dev/null
+++ b/testdata/fuzz/corpus/t-057
@@ -0,0 +1 @@
+v=spf1 a a a a a a a a
diff --git a/testdata/fuzz/corpus/t-058 b/testdata/fuzz/corpus/t-058
new file mode 100644
index 0000000..c2ceb81
--- /dev/null
+++ b/testdata/fuzz/corpus/t-058
@@ -0,0 +1 @@
+v=spf1 a:abc.123
diff --git a/testdata/fuzz/corpus/t-059 b/testdata/fuzz/corpus/t-059
new file mode 100644
index 0000000..eedcacf
--- /dev/null
+++ b/testdata/fuzz/corpus/t-059
@@ -0,0 +1 @@
+v=spf1 a a:c1.example.com -all
diff --git a/testdata/fuzz/corpus/t-060 b/testdata/fuzz/corpus/t-060
new file mode 100644
index 0000000..66cba97
--- /dev/null
+++ b/testdata/fuzz/corpus/t-060
@@ -0,0 +1 @@
+v=spf1 a:%{a}.example.com -all
diff --git a/testdata/fuzz/corpus/t-061 b/testdata/fuzz/corpus/t-061
new file mode 100644
index 0000000..735d82a
--- /dev/null
+++ b/testdata/fuzz/corpus/t-061
@@ -0,0 +1 @@
+v=spf1 a -all
diff --git a/testdata/fuzz/corpus/t-062 b/testdata/fuzz/corpus/t-062
new file mode 100644
index 0000000..735d82a
--- /dev/null
+++ b/testdata/fuzz/corpus/t-062
@@ -0,0 +1 @@
+v=spf1 a -all
diff --git a/testdata/fuzz/corpus/t-063 b/testdata/fuzz/corpus/t-063
new file mode 100644
index 0000000..735d82a
--- /dev/null
+++ b/testdata/fuzz/corpus/t-063
@@ -0,0 +1 @@
+v=spf1 a -all
diff --git a/testdata/fuzz/corpus/t-064 b/testdata/fuzz/corpus/t-064
new file mode 100644
index 0000000..19f6fea
--- /dev/null
+++ b/testdata/fuzz/corpus/t-064
@@ -0,0 +1 @@
+v=spf1 a:ctrl.example.com\x0dptr -all
diff --git a/testdata/fuzz/corpus/t-065 b/testdata/fuzz/corpus/t-065
new file mode 100644
index 0000000..02abe41
--- /dev/null
+++ b/testdata/fuzz/corpus/t-065
@@ -0,0 +1 @@
+v=spf1 a:d6660//24
diff --git a/testdata/fuzz/corpus/t-066 b/testdata/fuzz/corpus/t-066
new file mode 100644
index 0000000..2b15b55
--- /dev/null
+++ b/testdata/fuzz/corpus/t-066
@@ -0,0 +1 @@
+v=spf1 a:d6660/24//100
diff --git a/testdata/fuzz/corpus/t-067 b/testdata/fuzz/corpus/t-067
new file mode 100644
index 0000000..9f3d2da
--- /dev/null
+++ b/testdata/fuzz/corpus/t-067
@@ -0,0 +1 @@
+v=spf1 a:erehwon.example.com a:foobar.com exp=nxdomain.com -all
diff --git a/testdata/fuzz/corpus/t-068 b/testdata/fuzz/corpus/t-068
new file mode 100644
index 0000000..5a179f7
--- /dev/null
+++ b/testdata/fuzz/corpus/t-068
@@ -0,0 +1 @@
+v=spf1 a:err.example.com a:err1.example.com a:err2.example.com ?all
diff --git a/testdata/fuzz/corpus/t-069 b/testdata/fuzz/corpus/t-069
new file mode 100644
index 0000000..ac844a9
--- /dev/null
+++ b/testdata/fuzz/corpus/t-069
@@ -0,0 +1 @@
+v=spf1 a:err.example.com a:err1.example.com ?all
diff --git a/testdata/fuzz/corpus/t-070 b/testdata/fuzz/corpus/t-070
new file mode 100644
index 0000000..44c1e2c
--- /dev/null
+++ b/testdata/fuzz/corpus/t-070
@@ -0,0 +1 @@
+v=spf1 a:examplea.com:8080
diff --git a/testdata/fuzz/corpus/t-071 b/testdata/fuzz/corpus/t-071
new file mode 100644
index 0000000..b41cc1e
--- /dev/null
+++ b/testdata/fuzz/corpus/t-071
@@ -0,0 +1 @@
+v=spf1 a:example.-com
diff --git a/testdata/fuzz/corpus/t-072 b/testdata/fuzz/corpus/t-072
new file mode 100644
index 0000000..37d1a91
--- /dev/null
+++ b/testdata/fuzz/corpus/t-072
@@ -0,0 +1 @@
+v=spf1 a:example.com:8080
diff --git a/testdata/fuzz/corpus/t-073 b/testdata/fuzz/corpus/t-073
new file mode 100644
index 0000000..8710ed0
--- /dev/null
+++ b/testdata/fuzz/corpus/t-073
@@ -0,0 +1 @@
+v=spf1 a:example.net -all
diff --git a/testdata/fuzz/corpus/t-074 b/testdata/fuzz/corpus/t-074
new file mode 100644
index 0000000..dfac5b8
--- /dev/null
+++ b/testdata/fuzz/corpus/t-074
@@ -0,0 +1 @@
+v=spf1 a:example.net \x96all
diff --git a/testdata/fuzz/corpus/t-075 b/testdata/fuzz/corpus/t-075
new file mode 100644
index 0000000..ba05c47
--- /dev/null
+++ b/testdata/fuzz/corpus/t-075
@@ -0,0 +1 @@
+v=spf1 a:foo-bar -all
diff --git a/testdata/fuzz/corpus/t-076 b/testdata/fuzz/corpus/t-076
new file mode 100644
index 0000000..79574bb
--- /dev/null
+++ b/testdata/fuzz/corpus/t-076
@@ -0,0 +1 @@
+v=spf1 a:foo:bar/baz.example.com
diff --git a/testdata/fuzz/corpus/t-077 b/testdata/fuzz/corpus/t-077
new file mode 100644
index 0000000..c77a7b9
--- /dev/null
+++ b/testdata/fuzz/corpus/t-077
@@ -0,0 +1 @@
+v=spf1 a:foo.example.com\0
diff --git a/testdata/fuzz/corpus/t-078 b/testdata/fuzz/corpus/t-078
new file mode 100644
index 0000000..ba7107e
--- /dev/null
+++ b/testdata/fuzz/corpus/t-078
@@ -0,0 +1 @@
+v=spf1 a:foo.example.com/24
diff --git a/testdata/fuzz/corpus/t-079 b/testdata/fuzz/corpus/t-079
new file mode 100644
index 0000000..c4f47a7
--- /dev/null
+++ b/testdata/fuzz/corpus/t-079
@@ -0,0 +1 @@
+v=spf1 a:foo.example.xn--zckzah -all
diff --git a/testdata/fuzz/corpus/t-080 b/testdata/fuzz/corpus/t-080
new file mode 100644
index 0000000..efd5a18
--- /dev/null
+++ b/testdata/fuzz/corpus/t-080
@@ -0,0 +1 @@
+v=spf1 a:%{H} -all
diff --git a/testdata/fuzz/corpus/t-081 b/testdata/fuzz/corpus/t-081
new file mode 100644
index 0000000..af89e20
--- /dev/null
+++ b/testdata/fuzz/corpus/t-081
@@ -0,0 +1 @@
+v=spf1 -a:%{h} +all
diff --git a/testdata/fuzz/corpus/t-082 b/testdata/fuzz/corpus/t-082
new file mode 100644
index 0000000..5b4ccf4
--- /dev/null
+++ b/testdata/fuzz/corpus/t-082
@@ -0,0 +1 @@
+v=spf1 a:%{H}.bar -all
diff --git a/testdata/fuzz/corpus/t-083 b/testdata/fuzz/corpus/t-083
new file mode 100644
index 0000000..101bc6c
--- /dev/null
+++ b/testdata/fuzz/corpus/t-083
@@ -0,0 +1 @@
+v=spf1 a include:inc.example.com a ip4:1.2.3.4 -all
diff --git a/testdata/fuzz/corpus/t-084 b/testdata/fuzz/corpus/t-084
new file mode 100644
index 0000000..adc9154
--- /dev/null
+++ b/testdata/fuzz/corpus/t-084
@@ -0,0 +1 @@
+v=spf1 a include:inc.example.com ip4:1.2.3.4 mx -all
diff --git a/testdata/fuzz/corpus/t-085 b/testdata/fuzz/corpus/t-085
new file mode 100644
index 0000000..3aaa29a
--- /dev/null
+++ b/testdata/fuzz/corpus/t-085
@@ -0,0 +1 @@
+v=spf1 +all
diff --git a/testdata/fuzz/corpus/t-086 b/testdata/fuzz/corpus/t-086
new file mode 100644
index 0000000..568b3f5
--- /dev/null
+++ b/testdata/fuzz/corpus/t-086
@@ -0,0 +1 @@
+v=spf1 -all
diff --git a/testdata/fuzz/corpus/t-087 b/testdata/fuzz/corpus/t-087
new file mode 100644
index 0000000..df388d6
--- /dev/null
+++ b/testdata/fuzz/corpus/t-087
@@ -0,0 +1 @@
+v=spf1 -all.
diff --git a/testdata/fuzz/corpus/t-088 b/testdata/fuzz/corpus/t-088
new file mode 100644
index 0000000..79d2aa2
--- /dev/null
+++ b/testdata/fuzz/corpus/t-088
@@ -0,0 +1 @@
+v=spf1 =all
diff --git a/testdata/fuzz/corpus/t-089 b/testdata/fuzz/corpus/t-089
new file mode 100644
index 0000000..fb1de6d
--- /dev/null
+++ b/testdata/fuzz/corpus/t-089
@@ -0,0 +1 @@
+v=spf1 ?all
diff --git a/testdata/fuzz/corpus/t-090 b/testdata/fuzz/corpus/t-090
new file mode 100644
index 0000000..6cad7b8
--- /dev/null
+++ b/testdata/fuzz/corpus/t-090
@@ -0,0 +1 @@
+v=spf1 -all/8
diff --git a/testdata/fuzz/corpus/t-091 b/testdata/fuzz/corpus/t-091
new file mode 100644
index 0000000..ea4ae09
--- /dev/null
+++ b/testdata/fuzz/corpus/t-091
@@ -0,0 +1 @@
+v=spf1 all -all
diff --git a/testdata/fuzz/corpus/t-092 b/testdata/fuzz/corpus/t-092
new file mode 100644
index 0000000..1d59e5f
--- /dev/null
+++ b/testdata/fuzz/corpus/t-092
@@ -0,0 +1 @@
+v=spf1 -all exp=e11msg.example.com
diff --git a/testdata/fuzz/corpus/t-093 b/testdata/fuzz/corpus/t-093
new file mode 100644
index 0000000..454abd4
--- /dev/null
+++ b/testdata/fuzz/corpus/t-093
@@ -0,0 +1 @@
+v=spf1 -all exp=e4msg.example.com
diff --git a/testdata/fuzz/corpus/t-094 b/testdata/fuzz/corpus/t-094
new file mode 100644
index 0000000..8d5bdaf
--- /dev/null
+++ b/testdata/fuzz/corpus/t-094
@@ -0,0 +1 @@
+v=spf1 -all exp=e6msg.example.com
diff --git a/testdata/fuzz/corpus/t-095 b/testdata/fuzz/corpus/t-095
new file mode 100644
index 0000000..2479538
--- /dev/null
+++ b/testdata/fuzz/corpus/t-095
@@ -0,0 +1 @@
+v=spf1 -all exp=exp2.example.com
diff --git a/testdata/fuzz/corpus/t-096 b/testdata/fuzz/corpus/t-096
new file mode 100644
index 0000000..269bf3d
--- /dev/null
+++ b/testdata/fuzz/corpus/t-096
@@ -0,0 +1 @@
+v=spf1 -all exp=exp4.example.com
diff --git a/testdata/fuzz/corpus/t-097 b/testdata/fuzz/corpus/t-097
new file mode 100644
index 0000000..db539e7
--- /dev/null
+++ b/testdata/fuzz/corpus/t-097
@@ -0,0 +1 @@
+v=spf1 -all exp=exp.example.net
diff --git a/testdata/fuzz/corpus/t-098 b/testdata/fuzz/corpus/t-098
new file mode 100644
index 0000000..981d32b
--- /dev/null
+++ b/testdata/fuzz/corpus/t-098
@@ -0,0 +1 @@
+v=spf1 -all exp=foobar.%{o}.%{o}.%{o}.%{o}.%{o}.%{o}.%{o}.%{o}.example.com
diff --git a/testdata/fuzz/corpus/t-099 b/testdata/fuzz/corpus/t-099
new file mode 100644
index 0000000..2d35d30
--- /dev/null
+++ b/testdata/fuzz/corpus/t-099
@@ -0,0 +1 @@
+v=spf1 -all exp=%{ir}.example.com
diff --git a/testdata/fuzz/corpus/t-100 b/testdata/fuzz/corpus/t-100
new file mode 100644
index 0000000..b0ea1f3
--- /dev/null
+++ b/testdata/fuzz/corpus/t-100
@@ -0,0 +1 @@
+v=spf1 -all exp=msg8.%{D2}
diff --git a/testdata/fuzz/corpus/t-101 b/testdata/fuzz/corpus/t-101
new file mode 100644
index 0000000..aae853c
--- /dev/null
+++ b/testdata/fuzz/corpus/t-101
@@ -0,0 +1 @@
+v=spf1 -all exp=%{r}.example.com
diff --git a/testdata/fuzz/corpus/t-102 b/testdata/fuzz/corpus/t-102
new file mode 100644
index 0000000..964e37f
--- /dev/null
+++ b/testdata/fuzz/corpus/t-102
@@ -0,0 +1 @@
+v=spf1 -all foo=%abc
diff --git a/testdata/fuzz/corpus/t-103 b/testdata/fuzz/corpus/t-103
new file mode 100644
index 0000000..db95203
--- /dev/null
+++ b/testdata/fuzz/corpus/t-103
@@ -0,0 +1 @@
+v=spf1 -all:foobar
diff --git a/testdata/fuzz/corpus/t-104 b/testdata/fuzz/corpus/t-104
new file mode 100644
index 0000000..6e1207b
--- /dev/null
+++ b/testdata/fuzz/corpus/t-104
@@ -0,0 +1 @@
+v=spf1 -all ip6
diff --git a/testdata/fuzz/corpus/t-105 b/testdata/fuzz/corpus/t-105
new file mode 100644
index 0000000..b062de1
--- /dev/null
+++ b/testdata/fuzz/corpus/t-105
@@ -0,0 +1 @@
+v=spf1 ?all redirect=
diff --git a/testdata/fuzz/corpus/t-106 b/testdata/fuzz/corpus/t-106
new file mode 100644
index 0000000..08bd593
--- /dev/null
+++ b/testdata/fuzz/corpus/t-106
@@ -0,0 +1 @@
+v=spf1 a:macro%%percent%_%_space%-url-space.example.com -all
diff --git a/testdata/fuzz/corpus/t-107 b/testdata/fuzz/corpus/t-107
new file mode 100644
index 0000000..8b6d5db
--- /dev/null
+++ b/testdata/fuzz/corpus/t-107
@@ -0,0 +1 @@
+v=spf1 a:mail.example...com -all
diff --git a/testdata/fuzz/corpus/t-108 b/testdata/fuzz/corpus/t-108
new file mode 100644
index 0000000..6e012c0
--- /dev/null
+++ b/testdata/fuzz/corpus/t-108
@@ -0,0 +1 @@
+v=spf1 a:museum
diff --git a/testdata/fuzz/corpus/t-109 b/testdata/fuzz/corpus/t-109
new file mode 100644
index 0000000..f8d8ef3
--- /dev/null
+++ b/testdata/fuzz/corpus/t-109
@@ -0,0 +1 @@
+v=spf1 a:museum.
diff --git a/testdata/fuzz/corpus/t-110 b/testdata/fuzz/corpus/t-110
new file mode 100644
index 0000000..7638576
--- /dev/null
+++ b/testdata/fuzz/corpus/t-110
@@ -0,0 +1 @@
+v=spf1 a:mx1.example.com mx:mx1.example.com ~all
diff --git a/testdata/fuzz/corpus/t-111 b/testdata/fuzz/corpus/t-111
new file mode 100644
index 0000000..1366e07
--- /dev/null
+++ b/testdata/fuzz/corpus/t-111
@@ -0,0 +1 @@
+v=spf1 a mx a mx a mx a mx a ptr a ip4:1.2.3.4 -all
diff --git a/testdata/fuzz/corpus/t-112 b/testdata/fuzz/corpus/t-112
new file mode 100644
index 0000000..5481471
--- /dev/null
+++ b/testdata/fuzz/corpus/t-112
@@ -0,0 +1 @@
+v=spf1 a mx a mx a mx a mx a ptr ip4:1.2.3.4 -all
diff --git a/testdata/fuzz/corpus/t-113 b/testdata/fuzz/corpus/t-113
new file mode 100644
index 0000000..11deca3
--- /dev/null
+++ b/testdata/fuzz/corpus/t-113
@@ -0,0 +1 @@
+v=spf1 a mx include:a.com
diff --git a/testdata/fuzz/corpus/t-114 b/testdata/fuzz/corpus/t-114
new file mode 100644
index 0000000..c4addf6
--- /dev/null
+++ b/testdata/fuzz/corpus/t-114
@@ -0,0 +1 @@
+v=spf1 a mx include:b.com
diff --git a/testdata/fuzz/corpus/t-115 b/testdata/fuzz/corpus/t-115
new file mode 100644
index 0000000..14d2a33
--- /dev/null
+++ b/testdata/fuzz/corpus/t-115
@@ -0,0 +1 @@
+v=spf1 a:nothing//24
diff --git a/testdata/fuzz/corpus/t-116 b/testdata/fuzz/corpus/t-116
new file mode 100644
index 0000000..15c5888
--- /dev/null
+++ b/testdata/fuzz/corpus/t-116
@@ -0,0 +1 @@
+v=spf1 a:%{o0}
diff --git a/testdata/fuzz/corpus/t-117 b/testdata/fuzz/corpus/t-117
new file mode 100644
index 0000000..1096378
--- /dev/null
+++ b/testdata/fuzz/corpus/t-117
@@ -0,0 +1 @@
+v=spf1 +a:o1-%{o1}-o1
diff --git a/testdata/fuzz/corpus/t-118 b/testdata/fuzz/corpus/t-118
new file mode 100644
index 0000000..d0a328a
--- /dev/null
+++ b/testdata/fuzz/corpus/t-118
@@ -0,0 +1 @@
+v=spf1 +a:o1r-%{o1r}-o1r
diff --git a/testdata/fuzz/corpus/t-119 b/testdata/fuzz/corpus/t-119
new file mode 100644
index 0000000..087328d
--- /dev/null
+++ b/testdata/fuzz/corpus/t-119
@@ -0,0 +1 @@
+v=spf1 +a:o7-%{o7}-o7
diff --git a/testdata/fuzz/corpus/t-120 b/testdata/fuzz/corpus/t-120
new file mode 100644
index 0000000..08828d6
--- /dev/null
+++ b/testdata/fuzz/corpus/t-120
@@ -0,0 +1 @@
+v=spf1 +a:ooo-%{o7}-ooo
diff --git a/testdata/fuzz/corpus/t-121 b/testdata/fuzz/corpus/t-121
new file mode 100644
index 0000000..ac63876
--- /dev/null
+++ b/testdata/fuzz/corpus/t-121
@@ -0,0 +1 @@
+v=spf1 +a:ooo-%{o}-ooo
diff --git a/testdata/fuzz/corpus/t-122 b/testdata/fuzz/corpus/t-122
new file mode 100644
index 0000000..a020a33
--- /dev/null
+++ b/testdata/fuzz/corpus/t-122
@@ -0,0 +1 @@
+v=spf1 +a:OOO-%{O}-OOO
diff --git a/testdata/fuzz/corpus/t-123 b/testdata/fuzz/corpus/t-123
new file mode 100644
index 0000000..0a03b16
--- /dev/null
+++ b/testdata/fuzz/corpus/t-123
@@ -0,0 +1 @@
+v=spf1 +a:ppp-%{p}-ppp
diff --git a/testdata/fuzz/corpus/t-124 b/testdata/fuzz/corpus/t-124
new file mode 100644
index 0000000..d1e10c3
--- /dev/null
+++ b/testdata/fuzz/corpus/t-124
@@ -0,0 +1 @@
+v=spf1 +a:sra-%{sr.}-sra
diff --git a/testdata/fuzz/corpus/t-125 b/testdata/fuzz/corpus/t-125
new file mode 100644
index 0000000..d6173c6
--- /dev/null
+++ b/testdata/fuzz/corpus/t-125
@@ -0,0 +1 @@
+v=spf1 +a:sr-%{sr}-sr
diff --git a/testdata/fuzz/corpus/t-126 b/testdata/fuzz/corpus/t-126
new file mode 100644
index 0000000..99190be
--- /dev/null
+++ b/testdata/fuzz/corpus/t-126
@@ -0,0 +1 @@
+v=spf1 +a:sss-%{s}-sss
diff --git a/testdata/fuzz/corpus/t-127 b/testdata/fuzz/corpus/t-127
new file mode 100644
index 0000000..ae05bc9
--- /dev/null
+++ b/testdata/fuzz/corpus/t-127
@@ -0,0 +1 @@
+v=spf1 +a:vvv-%{v}-vvv
diff --git a/testdata/fuzz/corpus/t-128 b/testdata/fuzz/corpus/t-128
new file mode 100644
index 0000000..e969637
--- /dev/null
+++ b/testdata/fuzz/corpus/t-128
@@ -0,0 +1 @@
+v=spf1 a:%{x}
diff --git a/testdata/fuzz/corpus/t-129 b/testdata/fuzz/corpus/t-129
new file mode 100644
index 0000000..08a6a10
--- /dev/null
+++ b/testdata/fuzz/corpus/t-129
@@ -0,0 +1 @@
+v=spf1 a:\xEF\xBB\xBFgarbage.example.net -all
diff --git a/testdata/fuzz/corpus/t-130 b/testdata/fuzz/corpus/t-130
new file mode 100644
index 0000000..ac903ec
--- /dev/null
+++ b/testdata/fuzz/corpus/t-130
@@ -0,0 +1 @@
+v=spf1 default=+
diff --git a/testdata/fuzz/corpus/t-131 b/testdata/fuzz/corpus/t-131
new file mode 100644
index 0000000..4487923
--- /dev/null
+++ b/testdata/fuzz/corpus/t-131
@@ -0,0 +1 @@
+v=spf1 default=-
diff --git a/testdata/fuzz/corpus/t-132 b/testdata/fuzz/corpus/t-132
new file mode 100644
index 0000000..a834cca
--- /dev/null
+++ b/testdata/fuzz/corpus/t-132
@@ -0,0 +1 @@
+v=spf1 default=pass
diff --git a/testdata/fuzz/corpus/t-133 b/testdata/fuzz/corpus/t-133
new file mode 100644
index 0000000..a7e6303
--- /dev/null
+++ b/testdata/fuzz/corpus/t-133
@@ -0,0 +1 @@
+v=spf1 exists
diff --git a/testdata/fuzz/corpus/t-134 b/testdata/fuzz/corpus/t-134
new file mode 100644
index 0000000..afe19cf
--- /dev/null
+++ b/testdata/fuzz/corpus/t-134
@@ -0,0 +1 @@
+v=spf1 exists:
diff --git a/testdata/fuzz/corpus/t-135 b/testdata/fuzz/corpus/t-135
new file mode 100644
index 0000000..4a634b4
--- /dev/null
+++ b/testdata/fuzz/corpus/t-135
@@ -0,0 +1 @@
+v=spf1 exists:d1111 -all
diff --git a/testdata/fuzz/corpus/t-136 b/testdata/fuzz/corpus/t-136
new file mode 100644
index 0000000..fadf0e0
--- /dev/null
+++ b/testdata/fuzz/corpus/t-136
@@ -0,0 +1 @@
+v=spf1 exists:err.example.com -all
diff --git a/testdata/fuzz/corpus/t-137 b/testdata/fuzz/corpus/t-137
new file mode 100644
index 0000000..4b2eb62
--- /dev/null
+++ b/testdata/fuzz/corpus/t-137
@@ -0,0 +1 @@
+v=spf1 exists:foo%(ir).sbl.example.com ?all
diff --git a/testdata/fuzz/corpus/t-138 b/testdata/fuzz/corpus/t-138
new file mode 100644
index 0000000..4aa486d
--- /dev/null
+++ b/testdata/fuzz/corpus/t-138
@@ -0,0 +1 @@
+v=spf1 exists:foo%.sbl.example.com ?all
diff --git a/testdata/fuzz/corpus/t-139 b/testdata/fuzz/corpus/t-139
new file mode 100644
index 0000000..c4d2919
--- /dev/null
+++ b/testdata/fuzz/corpus/t-139
@@ -0,0 +1 @@
+v=spf1 exists:%{i}.%{l2r-}.user.%{d2}
diff --git a/testdata/fuzz/corpus/t-140 b/testdata/fuzz/corpus/t-140
new file mode 100644
index 0000000..1f66704
--- /dev/null
+++ b/testdata/fuzz/corpus/t-140
@@ -0,0 +1 @@
+v=spf1 -exists:%(ir).sbl.example.com ?all
diff --git a/testdata/fuzz/corpus/t-141 b/testdata/fuzz/corpus/t-141
new file mode 100644
index 0000000..d6747f9
--- /dev/null
+++ b/testdata/fuzz/corpus/t-141
@@ -0,0 +1 @@
+v=spf1 exists:%{l2r+-}.user.%{d2}
diff --git a/testdata/fuzz/corpus/t-142 b/testdata/fuzz/corpus/t-142
new file mode 100644
index 0000000..0c30ad9
--- /dev/null
+++ b/testdata/fuzz/corpus/t-142
@@ -0,0 +1 @@
+v=spf1 exists:mail6.example.com -all
diff --git a/testdata/fuzz/corpus/t-143 b/testdata/fuzz/corpus/t-143
new file mode 100644
index 0000000..4c0be1b
--- /dev/null
+++ b/testdata/fuzz/corpus/t-143
@@ -0,0 +1 @@
+v=spf1 exists:mail.example.com
diff --git a/testdata/fuzz/corpus/t-144 b/testdata/fuzz/corpus/t-144
new file mode 100644
index 0000000..caa8608
--- /dev/null
+++ b/testdata/fuzz/corpus/t-144
@@ -0,0 +1 @@
+v=spf1 exists:mail.example.com/24
diff --git a/testdata/fuzz/corpus/t-145 b/testdata/fuzz/corpus/t-145
new file mode 100644
index 0000000..2e6c6bb
--- /dev/null
+++ b/testdata/fuzz/corpus/t-145
@@ -0,0 +1 @@
+v=spf1 exists:%{p}.should.example.com ~exists:%{p}.ok.example.com
diff --git a/testdata/fuzz/corpus/t-146 b/testdata/fuzz/corpus/t-146
new file mode 100644
index 0000000..7c61b10
--- /dev/null
+++ b/testdata/fuzz/corpus/t-146
@@ -0,0 +1 @@
+v=spf1 exp= -all
diff --git a/testdata/fuzz/corpus/t-147 b/testdata/fuzz/corpus/t-147
new file mode 100644
index 0000000..3530827
--- /dev/null
+++ b/testdata/fuzz/corpus/t-147
@@ -0,0 +1 @@
+v=spf1 exp=-all
diff --git a/testdata/fuzz/corpus/t-148 b/testdata/fuzz/corpus/t-148
new file mode 100644
index 0000000..00e1b5a
--- /dev/null
+++ b/testdata/fuzz/corpus/t-148
@@ -0,0 +1 @@
+v=spf1 exp=badexp.example.com -all
diff --git a/testdata/fuzz/corpus/t-149 b/testdata/fuzz/corpus/t-149
new file mode 100644
index 0000000..b5cd0b0
--- /dev/null
+++ b/testdata/fuzz/corpus/t-149
@@ -0,0 +1 @@
+v=spf1 exp=blah +all
diff --git a/testdata/fuzz/corpus/t-150 b/testdata/fuzz/corpus/t-150
new file mode 100644
index 0000000..f4c97ab
--- /dev/null
+++ b/testdata/fuzz/corpus/t-150
@@ -0,0 +1 @@
+v=spf1 exp=e13msg.example.com -all
diff --git a/testdata/fuzz/corpus/t-151 b/testdata/fuzz/corpus/t-151
new file mode 100644
index 0000000..4ad73bd
--- /dev/null
+++ b/testdata/fuzz/corpus/t-151
@@ -0,0 +1 @@
+v=spf1 exp=e13msg.example.com -all exp=e11msg.example.com
diff --git a/testdata/fuzz/corpus/t-152 b/testdata/fuzz/corpus/t-152
new file mode 100644
index 0000000..48f1a67
--- /dev/null
+++ b/testdata/fuzz/corpus/t-152
@@ -0,0 +1 @@
+v=spf1 exp=e21msg.example.com -all
diff --git a/testdata/fuzz/corpus/t-153 b/testdata/fuzz/corpus/t-153
new file mode 100644
index 0000000..44046e8
--- /dev/null
+++ b/testdata/fuzz/corpus/t-153
@@ -0,0 +1 @@
+v=spf1 exp=exp1.example.com redirect=e2.example.com
diff --git a/testdata/fuzz/corpus/t-154 b/testdata/fuzz/corpus/t-154
new file mode 100644
index 0000000..6d6a092
--- /dev/null
+++ b/testdata/fuzz/corpus/t-154
@@ -0,0 +1 @@
+v=spf1 exp=exp1.example.com redirect=e4.example.com
diff --git a/testdata/fuzz/corpus/t-155 b/testdata/fuzz/corpus/t-155
new file mode 100644
index 0000000..a33905b
--- /dev/null
+++ b/testdata/fuzz/corpus/t-155
@@ -0,0 +1 @@
+v=spf1 exp=mail.example.com -all
diff --git a/testdata/fuzz/corpus/t-156 b/testdata/fuzz/corpus/t-156
new file mode 100644
index 0000000..4f36760
--- /dev/null
+++ b/testdata/fuzz/corpus/t-156
@@ -0,0 +1 @@
+v=spf1 exp=msg.example.com. -all
diff --git a/testdata/fuzz/corpus/t-157 b/testdata/fuzz/corpus/t-157
new file mode 100644
index 0000000..d76507e
--- /dev/null
+++ b/testdata/fuzz/corpus/t-157
@@ -0,0 +1 @@
+v=spf1 exp=twoexp.example.com -all
diff --git a/testdata/fuzz/corpus/t-158 b/testdata/fuzz/corpus/t-158
new file mode 100644
index 0000000..f4ced85
--- /dev/null
+++ b/testdata/fuzz/corpus/t-158
@@ -0,0 +1 @@
+v=spf1 include +all
diff --git a/testdata/fuzz/corpus/t-159 b/testdata/fuzz/corpus/t-159
new file mode 100644
index 0000000..2ac6bd2
--- /dev/null
+++ b/testdata/fuzz/corpus/t-159
@@ -0,0 +1 @@
+v=spf1 include: -all
diff --git a/testdata/fuzz/corpus/t-160 b/testdata/fuzz/corpus/t-160
new file mode 100644
index 0000000..2a157b5
--- /dev/null
+++ b/testdata/fuzz/corpus/t-160
@@ -0,0 +1 @@
+v=spf1 include:domain2 ip4:1.1.1.1
diff --git a/testdata/fuzz/corpus/t-161 b/testdata/fuzz/corpus/t-161
new file mode 100644
index 0000000..ba0261f
--- /dev/null
+++ b/testdata/fuzz/corpus/t-161
@@ -0,0 +1 @@
+v=spf1 include:domain ~all
diff --git a/testdata/fuzz/corpus/t-162 b/testdata/fuzz/corpus/t-162
new file mode 100644
index 0000000..21f9342
--- /dev/null
+++ b/testdata/fuzz/corpus/t-162
@@ -0,0 +1 @@
+v=spf1 include:e2.example.com
diff --git a/testdata/fuzz/corpus/t-163 b/testdata/fuzz/corpus/t-163
new file mode 100644
index 0000000..add890d
--- /dev/null
+++ b/testdata/fuzz/corpus/t-163
@@ -0,0 +1 @@
+v=spf1 include:e3.example.com
diff --git a/testdata/fuzz/corpus/t-164 b/testdata/fuzz/corpus/t-164
new file mode 100644
index 0000000..7428be9
--- /dev/null
+++ b/testdata/fuzz/corpus/t-164
@@ -0,0 +1 @@
+v=spf1 include:e3.example.com -all exp=exp3.example.com
diff --git a/testdata/fuzz/corpus/t-165 b/testdata/fuzz/corpus/t-165
new file mode 100644
index 0000000..6249d2f
--- /dev/null
+++ b/testdata/fuzz/corpus/t-165
@@ -0,0 +1 @@
+v=spf1 include:e6.example.com -all
diff --git a/testdata/fuzz/corpus/t-166 b/testdata/fuzz/corpus/t-166
new file mode 100644
index 0000000..7c93162
--- /dev/null
+++ b/testdata/fuzz/corpus/t-166
@@ -0,0 +1 @@
+v=spf1 include:erehwon.example.com -all
diff --git a/testdata/fuzz/corpus/t-167 b/testdata/fuzz/corpus/t-167
new file mode 100644
index 0000000..0b76187
--- /dev/null
+++ b/testdata/fuzz/corpus/t-167
@@ -0,0 +1 @@
+v=spf1 include:ip5.example.com/24 -all
diff --git a/testdata/fuzz/corpus/t-168 b/testdata/fuzz/corpus/t-168
new file mode 100644
index 0000000..a2c8229
--- /dev/null
+++ b/testdata/fuzz/corpus/t-168
@@ -0,0 +1 @@
+v=spf1 include:ip5.example.com ~all
diff --git a/testdata/fuzz/corpus/t-169 b/testdata/fuzz/corpus/t-169
new file mode 100644
index 0000000..6f389dd
--- /dev/null
+++ b/testdata/fuzz/corpus/t-169
@@ -0,0 +1 @@
+v=spf1 include:ip6.example.com all
diff --git a/testdata/fuzz/corpus/t-170 b/testdata/fuzz/corpus/t-170
new file mode 100644
index 0000000..278f5a3
--- /dev/null
+++ b/testdata/fuzz/corpus/t-170
@@ -0,0 +1 @@
+v=spf1 include:ip7.example.com -all
diff --git a/testdata/fuzz/corpus/t-171 b/testdata/fuzz/corpus/t-171
new file mode 100644
index 0000000..355e79b
--- /dev/null
+++ b/testdata/fuzz/corpus/t-171
@@ -0,0 +1 @@
+v=spf1 include:ip8.example.com -all
diff --git a/testdata/fuzz/corpus/t-172 b/testdata/fuzz/corpus/t-172
new file mode 100644
index 0000000..b630fe9
--- /dev/null
+++ b/testdata/fuzz/corpus/t-172
@@ -0,0 +1 @@
+v=spf1 include:o.spf.example.com. ~all
diff --git a/testdata/fuzz/corpus/t-173 b/testdata/fuzz/corpus/t-173
new file mode 100644
index 0000000..17e8a4e
--- /dev/null
+++ b/testdata/fuzz/corpus/t-173
@@ -0,0 +1 @@
+v=spf1 -include:_spfh.%{d2} ip4:1.2.3.0/24 -all
diff --git a/testdata/fuzz/corpus/t-174 b/testdata/fuzz/corpus/t-174
new file mode 100644
index 0000000..0ee2c48
--- /dev/null
+++ b/testdata/fuzz/corpus/t-174
@@ -0,0 +1 @@
+v=spf1 ip4
diff --git a/testdata/fuzz/corpus/t-175 b/testdata/fuzz/corpus/t-175
new file mode 100644
index 0000000..9cbe21f
--- /dev/null
+++ b/testdata/fuzz/corpus/t-175
@@ -0,0 +1 @@
+v=spf1 ip4:1.1.1.1/0 -all
diff --git a/testdata/fuzz/corpus/t-176 b/testdata/fuzz/corpus/t-176
new file mode 100644
index 0000000..d8d3412
--- /dev/null
+++ b/testdata/fuzz/corpus/t-176
@@ -0,0 +1 @@
+v=spf1 ip4:1.1.1.1/33 -all
diff --git a/testdata/fuzz/corpus/t-177 b/testdata/fuzz/corpus/t-177
new file mode 100644
index 0000000..1742aff
--- /dev/null
+++ b/testdata/fuzz/corpus/t-177
@@ -0,0 +1 @@
+v=spf1 ip4:1.1.1.1 -all
diff --git a/testdata/fuzz/corpus/t-178 b/testdata/fuzz/corpus/t-178
new file mode 100644
index 0000000..f712089
--- /dev/null
+++ b/testdata/fuzz/corpus/t-178
@@ -0,0 +1 @@
+v=spf1 ip4:1.1.1.1 redirect=e1.example.com
diff --git a/testdata/fuzz/corpus/t-179 b/testdata/fuzz/corpus/t-179
new file mode 100644
index 0000000..6b342d3
--- /dev/null
+++ b/testdata/fuzz/corpus/t-179
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3
diff --git a/testdata/fuzz/corpus/t-180 b/testdata/fuzz/corpus/t-180
new file mode 100644
index 0000000..95dedb4
--- /dev/null
+++ b/testdata/fuzz/corpus/t-180
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4
diff --git a/testdata/fuzz/corpus/t-181 b/testdata/fuzz/corpus/t-181
new file mode 100644
index 0000000..f082618
--- /dev/null
+++ b/testdata/fuzz/corpus/t-181
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4/032 -all
diff --git a/testdata/fuzz/corpus/t-182 b/testdata/fuzz/corpus/t-182
new file mode 100644
index 0000000..451d58f
--- /dev/null
+++ b/testdata/fuzz/corpus/t-182
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4//32
diff --git a/testdata/fuzz/corpus/t-183 b/testdata/fuzz/corpus/t-183
new file mode 100644
index 0000000..f85ab87
--- /dev/null
+++ b/testdata/fuzz/corpus/t-183
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4/32 -all
diff --git a/testdata/fuzz/corpus/t-184 b/testdata/fuzz/corpus/t-184
new file mode 100644
index 0000000..26c83a3
--- /dev/null
+++ b/testdata/fuzz/corpus/t-184
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4/33 -all
diff --git a/testdata/fuzz/corpus/t-185 b/testdata/fuzz/corpus/t-185
new file mode 100644
index 0000000..3de7791
--- /dev/null
+++ b/testdata/fuzz/corpus/t-185
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4:8080
diff --git a/testdata/fuzz/corpus/t-186 b/testdata/fuzz/corpus/t-186
new file mode 100644
index 0000000..fd405ee
--- /dev/null
+++ b/testdata/fuzz/corpus/t-186
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4 -all moo
diff --git a/testdata/fuzz/corpus/t-187 b/testdata/fuzz/corpus/t-187
new file mode 100644
index 0000000..21f1351
--- /dev/null
+++ b/testdata/fuzz/corpus/t-187
@@ -0,0 +1 @@
+v=spf1 -ip4:1.2.3.4 ip6:::FFFF:1.2.3.4
diff --git a/testdata/fuzz/corpus/t-188 b/testdata/fuzz/corpus/t-188
new file mode 100644
index 0000000..b257521
--- /dev/null
+++ b/testdata/fuzz/corpus/t-188
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4 redirect:t2.example.com
diff --git a/testdata/fuzz/corpus/t-189 b/testdata/fuzz/corpus/t-189
new file mode 100644
index 0000000..a81f670
--- /dev/null
+++ b/testdata/fuzz/corpus/t-189
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.4 redirect=t2.example.com
diff --git a/testdata/fuzz/corpus/t-190 b/testdata/fuzz/corpus/t-190
new file mode 100644
index 0000000..c71fe80
--- /dev/null
+++ b/testdata/fuzz/corpus/t-190
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.5 -all
diff --git a/testdata/fuzz/corpus/t-191 b/testdata/fuzz/corpus/t-191
new file mode 100644
index 0000000..02fd483
--- /dev/null
+++ b/testdata/fuzz/corpus/t-191
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.6 ~all
diff --git a/testdata/fuzz/corpus/t-192 b/testdata/fuzz/corpus/t-192
new file mode 100644
index 0000000..12b3bbb
--- /dev/null
+++ b/testdata/fuzz/corpus/t-192
@@ -0,0 +1 @@
+v=spf1 ip4:1.2.3.7 ?all
diff --git a/testdata/fuzz/corpus/t-193 b/testdata/fuzz/corpus/t-193
new file mode 100644
index 0000000..5170f61
--- /dev/null
+++ b/testdata/fuzz/corpus/t-193
@@ -0,0 +1 @@
+v=spf1 ip4:192.168.218.40
diff --git a/testdata/fuzz/corpus/t-194 b/testdata/fuzz/corpus/t-194
new file mode 100644
index 0000000..9b48384
--- /dev/null
+++ b/testdata/fuzz/corpus/t-194
@@ -0,0 +1 @@
+v=spf1 ip6:::1.1.1.1/0
diff --git a/testdata/fuzz/corpus/t-195 b/testdata/fuzz/corpus/t-195
new file mode 100644
index 0000000..c60d157
--- /dev/null
+++ b/testdata/fuzz/corpus/t-195
@@ -0,0 +1 @@
+v=spf1 ip6:::1.1.1.1/129
diff --git a/testdata/fuzz/corpus/t-196 b/testdata/fuzz/corpus/t-196
new file mode 100644
index 0000000..ee8a3c0
--- /dev/null
+++ b/testdata/fuzz/corpus/t-196
@@ -0,0 +1 @@
+v=spf1 ip6:::1.1.1.1//33
diff --git a/testdata/fuzz/corpus/t-197 b/testdata/fuzz/corpus/t-197
new file mode 100644
index 0000000..34a24fa
--- /dev/null
+++ b/testdata/fuzz/corpus/t-197
@@ -0,0 +1 @@
+v=spf1 ip6::CAFE::BABE
diff --git a/testdata/fuzz/corpus/t-198 b/testdata/fuzz/corpus/t-198
new file mode 100644
index 0000000..7aa02d4
--- /dev/null
+++ b/testdata/fuzz/corpus/t-198
@@ -0,0 +1 @@
+v=spf1 ip6:Cafe:Babe:8000::/33
diff --git a/testdata/fuzz/corpus/t-199 b/testdata/fuzz/corpus/t-199
new file mode 100644
index 0000000..4a6db10
--- /dev/null
+++ b/testdata/fuzz/corpus/t-199
@@ -0,0 +1 @@
+v=spf1 ip6:CAFE:BABE:8000::/33
diff --git a/testdata/fuzz/corpus/t-200 b/testdata/fuzz/corpus/t-200
new file mode 100644
index 0000000..450d3be
--- /dev/null
+++ b/testdata/fuzz/corpus/t-200
@@ -0,0 +1 @@
+v=spf1 moo.cow-far_out=man:dog/cat ip4:1.2.3.4 -all
diff --git a/testdata/fuzz/corpus/t-201 b/testdata/fuzz/corpus/t-201
new file mode 100644
index 0000000..9710a7a
--- /dev/null
+++ b/testdata/fuzz/corpus/t-201
@@ -0,0 +1 @@
+v=spf1 moo.cow/far_out=man:dog/cat ip4:1.2.3.4 -all
diff --git a/testdata/fuzz/corpus/t-202 b/testdata/fuzz/corpus/t-202
new file mode 100644
index 0000000..61369c2
--- /dev/null
+++ b/testdata/fuzz/corpus/t-202
@@ -0,0 +1 @@
+v=spf1 moo.cow:far_out=man:dog/cat ip4:1.2.3.4 -all
diff --git a/testdata/fuzz/corpus/t-203 b/testdata/fuzz/corpus/t-203
new file mode 100644
index 0000000..c8327ec
--- /dev/null
+++ b/testdata/fuzz/corpus/t-203
@@ -0,0 +1 @@
+v=spf1 mx
diff --git a/testdata/fuzz/corpus/t-204 b/testdata/fuzz/corpus/t-204
new file mode 100644
index 0000000..f715417
--- /dev/null
+++ b/testdata/fuzz/corpus/t-204
@@ -0,0 +1 @@
+v=spf1 mx//0 -all
diff --git a/testdata/fuzz/corpus/t-205 b/testdata/fuzz/corpus/t-205
new file mode 100644
index 0000000..c30e7e6
--- /dev/null
+++ b/testdata/fuzz/corpus/t-205
@@ -0,0 +1 @@
+v=spf1 mx/0 -all
diff --git a/testdata/fuzz/corpus/t-206 b/testdata/fuzz/corpus/t-206
new file mode 100644
index 0000000..d88ca4b
--- /dev/null
+++ b/testdata/fuzz/corpus/t-206
@@ -0,0 +1 @@
+v=spf1 mx//129 -all
diff --git a/testdata/fuzz/corpus/t-207 b/testdata/fuzz/corpus/t-207
new file mode 100644
index 0000000..59bcc1d
--- /dev/null
+++ b/testdata/fuzz/corpus/t-207
@@ -0,0 +1 @@
+v=spf1 mx/26 exists:%{l}.%{d}.%{i}.spf.example.net -all
diff --git a/testdata/fuzz/corpus/t-208 b/testdata/fuzz/corpus/t-208
new file mode 100644
index 0000000..d28b529
--- /dev/null
+++ b/testdata/fuzz/corpus/t-208
@@ -0,0 +1 @@
+v=spf1 mx//33 -all
diff --git a/testdata/fuzz/corpus/t-209 b/testdata/fuzz/corpus/t-209
new file mode 100644
index 0000000..82250fa
--- /dev/null
+++ b/testdata/fuzz/corpus/t-209
@@ -0,0 +1 @@
+v=spf1 mx/33 -all
diff --git a/testdata/fuzz/corpus/t-210 b/testdata/fuzz/corpus/t-210
new file mode 100644
index 0000000..13e9e30
--- /dev/null
+++ b/testdata/fuzz/corpus/t-210
@@ -0,0 +1 @@
+v=spf1 mx:abc.123
diff --git a/testdata/fuzz/corpus/t-211 b/testdata/fuzz/corpus/t-211
new file mode 100644
index 0000000..d5dcf8e
--- /dev/null
+++ b/testdata/fuzz/corpus/t-211
@@ -0,0 +1 @@
+v=spf1 mx: -all
diff --git a/testdata/fuzz/corpus/t-212 b/testdata/fuzz/corpus/t-212
new file mode 100644
index 0000000..0cb1f1f
--- /dev/null
+++ b/testdata/fuzz/corpus/t-212
@@ -0,0 +1 @@
+v=spf1 mx:d1110/24//100 ~all
diff --git a/testdata/fuzz/corpus/t-213 b/testdata/fuzz/corpus/t-213
new file mode 100644
index 0000000..7d194fb
--- /dev/null
+++ b/testdata/fuzz/corpus/t-213
@@ -0,0 +1 @@
+v=spf1 mx:d1110/24/100 ~all
diff --git a/testdata/fuzz/corpus/t-214 b/testdata/fuzz/corpus/t-214
new file mode 100644
index 0000000..63d4897
--- /dev/null
+++ b/testdata/fuzz/corpus/t-214
@@ -0,0 +1 @@
+v=spf1 mx:d1110/24//129 ~all
diff --git a/testdata/fuzz/corpus/t-215 b/testdata/fuzz/corpus/t-215
new file mode 100644
index 0000000..d247194
--- /dev/null
+++ b/testdata/fuzz/corpus/t-215
@@ -0,0 +1 @@
+v=spf1 mx:d6660/24//100 ~all
diff --git a/testdata/fuzz/corpus/t-216 b/testdata/fuzz/corpus/t-216
new file mode 100644
index 0000000..e804f23
--- /dev/null
+++ b/testdata/fuzz/corpus/t-216
@@ -0,0 +1 @@
+v=spf1 mx:d6660/24/100 ~all
diff --git a/testdata/fuzz/corpus/t-217 b/testdata/fuzz/corpus/t-217
new file mode 100644
index 0000000..122fefc
--- /dev/null
+++ b/testdata/fuzz/corpus/t-217
@@ -0,0 +1 @@
+v=spf1 mx:d6660//24 ~all
diff --git a/testdata/fuzz/corpus/t-218 b/testdata/fuzz/corpus/t-218
new file mode 100644
index 0000000..1786ad6
--- /dev/null
+++ b/testdata/fuzz/corpus/t-218
@@ -0,0 +1 @@
+v=spf1 mx:example.-com
diff --git a/testdata/fuzz/corpus/t-219 b/testdata/fuzz/corpus/t-219
new file mode 100644
index 0000000..a9cc470
--- /dev/null
+++ b/testdata/fuzz/corpus/t-219
@@ -0,0 +1 @@
+v=spf1 mx:example.com:8080
diff --git a/testdata/fuzz/corpus/t-220 b/testdata/fuzz/corpus/t-220
new file mode 100644
index 0000000..79522b2
--- /dev/null
+++ b/testdata/fuzz/corpus/t-220
@@ -0,0 +1 @@
+v=spf1 mx:%{fff} -all
diff --git a/testdata/fuzz/corpus/t-221 b/testdata/fuzz/corpus/t-221
new file mode 100644
index 0000000..a7d198d
--- /dev/null
+++ b/testdata/fuzz/corpus/t-221
@@ -0,0 +1 @@
+v=spf1 mx:foo:bar/baz.example.com
diff --git a/testdata/fuzz/corpus/t-222 b/testdata/fuzz/corpus/t-222
new file mode 100644
index 0000000..4d74e6d
--- /dev/null
+++ b/testdata/fuzz/corpus/t-222
@@ -0,0 +1 @@
+v=spf1 mx:foo.example.com\0
diff --git a/testdata/fuzz/corpus/t-223 b/testdata/fuzz/corpus/t-223
new file mode 100644
index 0000000..509cb00
--- /dev/null
+++ b/testdata/fuzz/corpus/t-223
@@ -0,0 +1 @@
+v=spf1 mx:foo.example.com/24
diff --git a/testdata/fuzz/corpus/t-224 b/testdata/fuzz/corpus/t-224
new file mode 100644
index 0000000..ca08da1
--- /dev/null
+++ b/testdata/fuzz/corpus/t-224
@@ -0,0 +1 @@
+v=spf1 mx redirect=_spf.example.com
diff --git a/testdata/fuzz/corpus/t-225 b/testdata/fuzz/corpus/t-225
new file mode 100644
index 0000000..7f21f42
--- /dev/null
+++ b/testdata/fuzz/corpus/t-225
@@ -0,0 +1 @@
+v=spf1 ptr
diff --git a/testdata/fuzz/corpus/t-226 b/testdata/fuzz/corpus/t-226
new file mode 100644
index 0000000..ff10146
--- /dev/null
+++ b/testdata/fuzz/corpus/t-226
@@ -0,0 +1 @@
+v=spf1 ptr:
diff --git a/testdata/fuzz/corpus/t-227 b/testdata/fuzz/corpus/t-227
new file mode 100644
index 0000000..bd0ed55
--- /dev/null
+++ b/testdata/fuzz/corpus/t-227
@@ -0,0 +1 @@
+v=spf1 ptr/0 -all
diff --git a/testdata/fuzz/corpus/t-228 b/testdata/fuzz/corpus/t-228
new file mode 100644
index 0000000..33383a4
--- /dev/null
+++ b/testdata/fuzz/corpus/t-228
@@ -0,0 +1 @@
+v=spf1 ptr -all
diff --git a/testdata/fuzz/corpus/t-229 b/testdata/fuzz/corpus/t-229
new file mode 100644
index 0000000..ff00a52
--- /dev/null
+++ b/testdata/fuzz/corpus/t-229
@@ -0,0 +1 @@
+v=spf1 ptr:example.com -all
diff --git a/testdata/fuzz/corpus/t-230 b/testdata/fuzz/corpus/t-230
new file mode 100644
index 0000000..fbc811e
--- /dev/null
+++ b/testdata/fuzz/corpus/t-230
@@ -0,0 +1 @@
+v=spf1 ptr:example.Com -all
diff --git a/testdata/fuzz/corpus/t-231 b/testdata/fuzz/corpus/t-231
new file mode 100644
index 0000000..b8adbee
--- /dev/null
+++ b/testdata/fuzz/corpus/t-231
@@ -0,0 +1 @@
+v=spf1 ptr:fe.example.org ptr:sgp.example.com exp=_expspf.example.org -all
diff --git a/testdata/fuzz/corpus/t-232 b/testdata/fuzz/corpus/t-232
new file mode 100644
index 0000000..818d562
--- /dev/null
+++ b/testdata/fuzz/corpus/t-232
@@ -0,0 +1 @@
+v=spf1 ptr:%{fff} -all
diff --git a/testdata/fuzz/corpus/t-233 b/testdata/fuzz/corpus/t-233
new file mode 100644
index 0000000..2e82592
--- /dev/null
+++ b/testdata/fuzz/corpus/t-233
@@ -0,0 +1 @@
+v=spf1 ptr:sonlas7 -all
diff --git a/testdata/fuzz/corpus/t-234 b/testdata/fuzz/corpus/t-234
new file mode 100644
index 0000000..2724a1c
--- /dev/null
+++ b/testdata/fuzz/corpus/t-234
@@ -0,0 +1 @@
+v=spf1 redirect=
diff --git a/testdata/fuzz/corpus/t-235 b/testdata/fuzz/corpus/t-235
new file mode 100644
index 0000000..0067fc9
--- /dev/null
+++ b/testdata/fuzz/corpus/t-235
@@ -0,0 +1 @@
+v=spf1 redirect=-all ?all
diff --git a/testdata/fuzz/corpus/t-236 b/testdata/fuzz/corpus/t-236
new file mode 100644
index 0000000..4020593
--- /dev/null
+++ b/testdata/fuzz/corpus/t-236
@@ -0,0 +1 @@
+v=spf1 redirect=a.spf.example.com
diff --git a/testdata/fuzz/corpus/t-237 b/testdata/fuzz/corpus/t-237
new file mode 100644
index 0000000..54aef69
--- /dev/null
+++ b/testdata/fuzz/corpus/t-237
@@ -0,0 +1 @@
+v=spf1 redirect=%{d}.d.spf.example.com.
diff --git a/testdata/fuzz/corpus/t-238 b/testdata/fuzz/corpus/t-238
new file mode 100644
index 0000000..0ae9055
--- /dev/null
+++ b/testdata/fuzz/corpus/t-238
@@ -0,0 +1 @@
+v=spf1 redirect=doesnotexist
diff --git a/testdata/fuzz/corpus/t-239 b/testdata/fuzz/corpus/t-239
new file mode 100644
index 0000000..4067780
--- /dev/null
+++ b/testdata/fuzz/corpus/t-239
@@ -0,0 +1 @@
+v=spf1 redirect=domain2
diff --git a/testdata/fuzz/corpus/t-240 b/testdata/fuzz/corpus/t-240
new file mode 100644
index 0000000..42e9df8
--- /dev/null
+++ b/testdata/fuzz/corpus/t-240
@@ -0,0 +1 @@
+v=spf1 redirect=e12.example.com -all redirect=e12.example.com
diff --git a/testdata/fuzz/corpus/t-241 b/testdata/fuzz/corpus/t-241
new file mode 100644
index 0000000..5825186
--- /dev/null
+++ b/testdata/fuzz/corpus/t-241
@@ -0,0 +1 @@
+v=spf1 redirect=erehwon.example.com
diff --git a/testdata/fuzz/corpus/t-242 b/testdata/fuzz/corpus/t-242
new file mode 100644
index 0000000..bdbb791
--- /dev/null
+++ b/testdata/fuzz/corpus/t-242
@@ -0,0 +1 @@
+v=spf1 redirect=faildom
diff --git a/testdata/fuzz/corpus/t-243 b/testdata/fuzz/corpus/t-243
new file mode 100644
index 0000000..5c2422c
--- /dev/null
+++ b/testdata/fuzz/corpus/t-243
@@ -0,0 +1 @@
+v=spf1 redirect=faildom all
diff --git a/testdata/fuzz/corpus/t-244 b/testdata/fuzz/corpus/t-244
new file mode 100644
index 0000000..2653970
--- /dev/null
+++ b/testdata/fuzz/corpus/t-244
@@ -0,0 +1 @@
+v=spf1 redirect=%{fff}
diff --git a/testdata/fuzz/corpus/t-245 b/testdata/fuzz/corpus/t-245
new file mode 100644
index 0000000..56f84ca
--- /dev/null
+++ b/testdata/fuzz/corpus/t-245
@@ -0,0 +1 @@
+v=spf1 redirect=t5.example.com ~all
diff --git a/testdata/fuzz/corpus/t-246 b/testdata/fuzz/corpus/t-246
new file mode 100644
index 0000000..72a9dcb
--- /dev/null
+++ b/testdata/fuzz/corpus/t-246
@@ -0,0 +1 @@
+v=spf1 redirect=testimplicit.example.com
diff --git a/testdata/fuzz/corpus/t-247 b/testdata/fuzz/corpus/t-247
new file mode 100644
index 0000000..d5840db
--- /dev/null
+++ b/testdata/fuzz/corpus/t-247
@@ -0,0 +1 @@
+v=spf1 \x80a:example.net -all