This document is a static immutable timestamp certificate.

Download: 1FiVfdHrBCGfpjcqAmwKJtrhZteRzD7JShHVy3w.html

1FiVfdHrBCGfpjcqAmwKJtrhZteRzD7JShHVy3w.html
ed5045f254132d8678ae89113d517f9ad3c7ec0d7ebdc0b032cf13d413fd8939
BlockCypher.com Blockchain.info Blocktrail.com
2019-01-29T12:00:01Z

List of files timestamped in this transaction:

  1. xevet-sefog-pedur-gezot-dusug-cufur-zabor-deryn-givad-zacir-regiv-besud-hezis-sagap-myret-favun-hixyx
    2019-01-29 00:05:20.0
  2. xelob-libyd-fyhen-donyk-kuzin-gokiz-vycyn-tobyh-ribob-fyfon-rudiv-susut-napyp-povyt-sazop-bylan-sexyx
    2019-01-29 00:06:08.0
  3. xinav-zutel-rihob-razeh-zazol-nyrok-fofub-lamoz-sicos-fiheb-pubim-sucud-zediv-rusiz-pytuh-gatol-gaxix
    2019-01-29 00:06:53.0
  4. xomov-fatin-selyg-likep-vovit-humah-lusaf-sizyc-kozaz-fizac-bygic-lahan-gumin-horyk-dokyg-dilyl-cyxax
    2019-01-29 00:23:36.0
  5. xicon-synoc-tusim-mepel-liviv-tesuv-mosel-sehus-butok-mikuv-zyrav-poban-surop-fegef-kimik-totul-mixyx
    2019-01-29 00:24:59.0
  6. xoron-dunun-cudon-mabed-bymom-pobyb-pereg-zepos-binaf-letyp-neroc-synol-nedof-fagyz-tenic-dagah-fixyx
    2019-01-29 00:26:14.0
  7. xezar-hezep-cysik-mesut-valok-zumek-zenag-honar-hadud-posac-pisor-levap-negud-nefug-megol-tavyg-zexux
    2019-01-29 00:27:15.0
  8. xikic-kakim-pules-falub-salal-tived-ziluz-behov-dymas-tofyc-boleb-kykek-tyvac-zucuc-rihis-tizak-kixix
    2019-01-29 00:28:29.0
  9. xipib-nopok-gedop-vofav-lelyh-fyhag-gacul-fodoz-lycuk-lylon-rymyl-sodek-matuv-kakar-vacod-lotim-zixyx
    2019-01-29 00:29:35.0
  10. ximil-zufav-byhif-herip-fyvyk-zizet-cegov-lylyf-melut-madab-fysur-muvev-voput-hurup-gesut-mesor-nixox
    2019-01-29 01:07:02.0
  11. xipoc-tabac-nesop-mikyk-gefeb-bosab-logop-nomep-pevuv-kipim-syleh-socan-tyzom-ciput-zuzuk-kafus-pexax
    2019-01-29 01:08:17.0
  12. xonov-dusib-dymep-nanuk-vymar-vupuz-sanec-neruc-hytam-vimiv-vydyh-tefak-haseg-nohys-biver-zanom-zexux
    2019-01-29 01:09:28.0
  13. xekot-patoc-limog-gytyd-favyp-huziv-fofuf-labod-zoras-porif-setuf-biluh-gynok-kipys-virib-bohup-gaxex
    2019-01-29 01:10:34.0
  14. xocaf-katom-hezep-lotup-nomav-korol-tyzat-gyvyb-guhyn-nozat-myguv-vokuz-nelec-vesuk-zoguf-hadaf-doxux
    2019-01-29 01:11:19.0
  15. xemem-tabum-sudad-lefuf-basek-dedar-celyz-liteg-mudak-gegiv-nygyl-cymek-syteh-syvip-vutad-vadop-nixex
    2019-01-29 01:47:32.0
  16. xubis-sepab-lumuk-potad-byvys-bosuf-balul-vesef-livud-rocib-gegyp-mysih-dygeb-hates-tavul-forun-fixix
    2019-01-29 01:48:25.0
  17. xizis-nysel-lorol-sepah-varyg-heraf-zifid-rimim-visom-fynul-fuhif-fetof-gyheg-picuz-buzef-mikyd-mixex
    2019-01-29 02:10:48.0
  18. xigob-fulud-kufib-hanoc-fonip-bazyb-gupav-hokit-rudas-dubyg-cohit-gymet-nopyk-nebyn-kikeg-gylal-fexix
    2019-01-29 02:11:57.0
  19. xolek-copip-demyd-gapyd-rebim-hapos-vymir-nives-cidal-gepir-cacup-pucog-tumyg-funam-sezof-lytih-myxex
    2019-01-29 02:54:55.0
  20. xifal-covot-fyfan-surup-tazyt-tomeg-hyseg-tutiv-tekut-tanoh-sydyf-mebob-likep-vypoh-rutig-pelof-hixix
    2019-01-29 02:55:40.0
  21. xonik-mecun-tahak-lokid-retok-suzid-runyg-typan-gopud-mehiz-fekuk-belyb-cupoc-megyt-fokoc-typug-muxix
    2019-01-29 03:36:29.0
  22. xopov-limyd-facyp-gyvap-pokac-vakog-gotor-sulef-ceden-sicin-fidin-milyv-regoz-nehym-ronyd-refuf-daxux
    2019-01-29 03:36:55.0
  23. xezem-mefab-rotec-sylak-hamit-mykyz-zahen-nulit-ritys-gifyz-kimeh-zimim-lypeg-vokeg-sagak-hurev-zuxex
    2019-01-29 03:37:34.0
  24. xefal-cedur-bepis-nyfab-gulur-ribym-gasyk-dukiz-rigap-fyzic-zikab-virap-dilik-tukyn-kekyn-zyson-gexax
    2019-01-29 03:38:23.0
  25. xecaz-poker-cozis-zafet-cisug-kibat-zygeh-sidof-nymil-palyd-tygul-bodur-tagus-dihon-zutak-venym-pexox
    2019-01-29 03:39:03.0
  26. xomol-rutok-nylis-munuf-sylel-lakab-zolus-turyh-zacef-fibez-syhic-mekoz-degit-lerok-carac-nylik-taxyx
    2019-01-29 03:40:17.0
  27. xetiv-zanov-tacer-nicuv-kunad-disal-burob-nyzap-nuvut-geduh-mypil-hukav-hatuc-konyd-vasir-lytok-vaxax
    2019-01-29 03:40:48.0
  28. xurog-mycos-fupar-cikig-podem-typag-nuvet-gynef-fomyk-dobar-fofes-hofum-riruz-hosuf-liliz-dufys-sixux
    2019-01-29 04:18:06.0
  29. xezed-bupys-cyniz-nyfun-ropen-lubeh-bubib-pyvac-hemab-hinah-fonid-ryrub-metip-racys-vovah-sulom-sexux
    2019-01-29 04:19:09.0
  30. xusem-zavel-pagyb-kypam-sober-cobag-copof-vacyn-luvoz-ramif-tonul-kekoz-vihuc-sonov-pabaz-sufov-fixax
    2019-01-29 04:19:55.0
  31. xugov-zigat-kikup-nikez-susec-syket-remuh-cytuz-pekaz-vapyl-becuz-dinov-zocil-giduh-horoz-curas-vyxux
    2019-01-29 04:20:45.0
  32. xesiz-relan-cagic-mabob-dicer-hyzag-tepec-ganit-pipof-hasel-ledob-bedod-hunub-lahyf-fovob-dicez-faxux
    2019-01-29 04:21:22.0
  33. xesir-gecib-zabes-fevop-lufud-matyv-zofiz-codak-zomyp-sacun-hebuk-bugyk-nebem-sudut-guzyn-lilag-naxyx
    2019-01-29 04:22:13.0
  34. xunag-cyfoc-hezev-lutek-rysov-keres-coror-ducev-gimas-gehug-divob-pagyc-tazag-fezuf-dukym-nisun-buxox
    2zkfMUx58fE5McpicJzpKktSkHac2D7uKzyTWzB
    2019-01-29 04:55:01.0
  35. xuhir-bysul-nobiz-gopuh-harun-nigyz-vuzov-kysop-fedym-bitaz-hirak-pydog-zacof-vekir-gydih-ligom-faxox
    1qcH3nZuNcw45iHPeL9cyKEx3BANo1sWGFsoxTW
    2019-01-29 04:55:46.0
  36. xofic-livym-tatol-mymug-suvuh-pifiz-sezov-besel-nuzuk-ripym-zasyd-mohik-lynub-mytog-mefub-cucyr-kyxix
    2019-01-29 05:04:14.0
  37. xides-riceb-hevap-madat-laseh-sabin-relud-dovar-hotog-kifyn-marym-huhab-difuh-keveg-fehez-cudid-guxux
    2019-01-29 05:04:56.0
  38. xufom-zogis-belek-kydat-symul-tyfom-latac-vanaf-cucog-cezat-lyzug-zepeg-fazyd-kytih-pyvuh-zyboh-nyxex
    2019-01-29 05:05:14.0
  39. xemoz-keden-kobyt-lubic-homos-tusur-gerov-hinyz-ditir-nahem-torar-votof-dytic-keveb-porab-memen-kixix
    2019-01-29 05:38:12.0
  40. xubab-kygoz-cihah-zuzym-fykom-fikyn-hoviz-cucop-tabad-rivuv-husig-bacuh-fysir-sivuv-zotom-lirul-zaxux
    2019-01-29 05:39:25.0
  41. xifin-mugoc-lihub-tonef-dafin-mymyl-fated-myses-zacip-tehiv-dakyh-dazec-cytoh-dogyd-ciges-dacos-zixix
    2019-01-29 05:40:30.0
  42. xizod-pibag-rifiv-hysur-pofic-magol-sevih-bakes-fanef-gupar-fifam-vicyz-gyvac-sepas-kulek-pyhyr-poxyx
    2019-01-29 05:41:10.0
  43. xegoh-fihat-lyzak-citup-tipaf-syhoc-tosup-binos-hunyk-fyhyg-tysos-zelar-sanol-cager-penas-nogot-kexux
    2019-01-29 05:42:10.0
  44. xomot-satep-gilyz-mamyv-mysic-befal-zahid-luveg-cebot-pahul-dosoz-fegol-kuzaz-cepul-rilol-vimip-dexix
    2019-01-29 05:42:42.0
  45. xigag-nybeg-ryhuh-vupir-nykif-laluf-ragos-sykip-tegol-litim-zidop-zobos-zyreh-cibop-nupuh-bynyh-pixix
    2019-01-29 05:43:27.0
  46. xupen-cilic-hutan-vokih-cetip-hemib-gamig-mudif-dipof-hebon-gunol-lykeb-fugoc-nykad-tokyf-remit-lexix
    2019-01-29 06:06:11.0
  47. xokot-lulum-nofyz-lypef-tapul-silyg-vahur-posav-hykud-budup-mibyn-nazed-cenur-bocol-rurug-hegut-vixax
    2019-01-29 06:06:30.0
  48. xilit-galut-mihor-mylom-pidep-cizyf-mozuz-petat-hupuf-sypeb-geboh-zobus-ryfah-vyzem-hucil-hiryn-cixax
    2019-01-29 06:06:53.0
  49. xunez-vykaz-haked-fiful-vamer-bakem-kumam-gyryv-zabok-lanyn-movyv-rebur-mucul-fumac-zubup-divaf-mexax
    2019-01-29 06:06:57.0
  50. xugag-febys-pafal-gused-facav-tulag-hefug-peraf-husot-lulok-tovev-gutub-bisoz-nubal-vomum-nykeg-zyxix
    2019-01-29 06:07:21.0
  51. xisal-cydec-cebin-rokar-dufoc-habeh-sytof-sagim-pyzib-dabeg-korur-nypur-nedev-byteg-ranup-zohup-kexyx
    2019-01-29 06:07:54.0
  52. xugag-ludog-cehep-retin-filur-lihep-gyhog-zicum-nihoc-pozif-favom-nurat-fagyg-nivol-fedih-mahut-sixax
    2019-01-29 06:22:53.0
  53. xetib-kifep-sinel-gulek-fogos-vycat-hunyn-bizar-pecok-dilap-vitig-rupep-mepip-vemid-lenet-symap-foxix
    2019-01-29 06:24:22.0
  54. xuvob-gumaz-dyras-cakah-rilik-zytar-dukyk-secis-mypyg-tymik-rofav-makuf-sofob-mybyb-pityp-ranys-pyxox
    2019-01-29 06:25:55.0
  55. xotim-malup-pokyc-kiduz-vokyv-secip-ligud-celym-dapab-dulec-zifaz-bapen-cusyd-rebaz-beros-hufet-gyxyx
    2019-01-29 06:52:25.0
  56. xugog-mocil-levit-pozob-gufyl-perib-lituk-kadyl-kodad-dusil-dotub-lysec-zefir-dubal-kuson-kysyl-rexux
    2019-01-29 07:12:35.0
  57. xokic-redic-kugoh-vopan-vunyp-gyleg-vulaz-mygab-cykuf-mucip-doben-lukiv-nuzes-metop-vicof-sozut-loxax
    2019-01-29 07:13:01.0
  58. xufel-syzur-nelyd-kybyz-dumyv-pysor-veziz-dyzaf-kuger-kesuc-tytol-rybyg-dufes-ruvop-nurap-sypak-taxox
    2019-01-29 07:14:58.0
  59. xezoh-nivab-seros-vycer-gotov-ginup-cedum-guzur-lalov-mifor-cezol-mymem-zokud-bafaz-kunap-katyd-guxux
    2019-01-29 07:44:34.0
  60. xihac-hycoh-reban-hetug-sinar-sygob-tyvit-noven-dusir-hanyn-potot-sezoh-kyhil-vifob-mivuf-vitiv-laxyx
    2019-01-29 07:45:10.0
  61. xukah-fymyk-sizot-tunaz-fyhev-nuvyk-vaden-hupub-muceh-gusol-kykef-vukyt-kyfir-hutol-danoh-habiv-vuxux
    2019-01-29 07:46:11.0
  62. xuhed-temyk-sarum-sizom-lazun-byfit-fumun-relor-tecuh-tipup-hymic-dobog-lohiv-sisis-nenyb-tynut-zixox
    2019-01-29 07:46:52.0
  63. xuvev-cepak-ridic-sikof-povyp-vipas-bibek-lutez-nitik-dyzyv-zigav-mynyf-daman-gerim-dovov-nocyd-bexox
    2019-01-29 08:08:16.0
  64. xosim-sedus-sotyk-ryrul-viluz-noryh-dotah-badas-pypyv-bicot-cagot-zekok-byfon-saryn-pagul-lokiv-toxix
    2019-01-29 08:09:12.0
  65. xedin-didip-tadek-rydyk-tegud-kosor-salyd-nened-gufyk-kidev-vysus-pukaf-raduf-vazik-gagel-lenip-vaxux
    1gPJJB135wksPKdyQTck7RtZPRJVF3GTSeMaycv
    2019-01-29 08:19:30.0
  66. xuhin-lydec-vytis-tigat-lymiv-tydyk-kanos-gatif-hofeb-cudym-ticuh-rukoc-cihiz-runev-dyzam-myrok-vaxex
    2019-01-29 08:28:50.0
  67. xodad-sinyg-badyh-zuhif-firat-racun-bokus-resel-zybyf-vonep-focic-cinor-fitaz-ritan-rokyh-ruhyc-rexax
    2019-01-29 08:29:48.0
  68. xelek-pobyt-movec-rotig-myfuk-lecem-vohah-girez-mohez-didan-nolif-mekar-vedyt-tabok-gaket-hanad-foxax
    2019-01-29 08:30:15.0
  69. xemeb-pikac-likub-civyf-benok-takac-carut-nigoz-bapev-himel-finyc-sisyh-zakib-gavyl-rihet-kukyv-cyxox
    2019-01-29 08:30:41.0
  70. ximik-ralit-bylol-vanip-vynog-temum-bazeg-zyhah-mumet-dusyv-ripas-noven-kuzan-riseh-kepip-ceduv-moxyx
    2019-01-29 08:31:31.0
  71. xekak-fikyc-mozob-cimuh-kyzat-zipif-kufys-bipuh-bober-nymov-lobis-pefon-tedan-genyz-cypud-cidon-hixex
    2019-01-29 08:32:33.0
  72. xekif-soral-pacut-kamat-fozic-makez-gised-bimin-tisav-zufep-pohos-gyzak-ligag-movak-zyluv-nycyt-cuxux
    2019-01-29 08:51:45.0
  73. xivel-lebak-bekop-hydok-bysif-resad-teciv-rozan-kucik-ryroh-segez-hamyk-vedyb-hytyc-hevaz-facyg-vyxox
    2019-01-29 08:53:10.0
  74. xuvad-miruk-gohum-hydin-varen-ronal-lorul-pitug-conym-foteb-fazec-nekun-nylir-hekez-folor-gubyh-naxex
    2019-01-29 08:54:30.0
  75. xemim-zileg-cuzoc-pikuc-hudar-dybak-cunyc-lovet-rypyz-zihot-mykyb-hepil-vogep-cudir-sepif-mubos-cuxix
    2019-01-29 08:55:41.0
  76. xutis-bazoc-fisut-posid-sobup-gobyp-teveb-pycyd-dubog-ticyz-cociv-pisyz-futin-nuvov-bipiz-lepav-dixex
    2019-01-29 09:22:28.0
  77. xicoz-godaz-basys-becit-varih-rabeb-losam-vusat-golup-dusuc-hadel-binez-rykot-remyn-logat-bycyz-poxox
    2019-01-29 09:24:00.0
  78. xebel-pifur-lorek-figat-nedyn-tepoc-fikef-dicil-vocat-limum-tagis-habiz-bytil-zymah-dysic-futag-zaxyx
    2019-01-29 09:25:13.0
  79. xopal-talib-nebos-nyvuh-corih-muguv-gopuf-dohov-volaf-logor-zisym-gyrog-rolop-sivem-vubyv-capon-poxix
    2019-01-29 09:26:51.0
  80. xunon-bokas-vuvoz-hegil-nesez-vufuc-nipoc-lulih-pudyz-nurut-fyvuv-tysyz-fokeb-hicov-dulus-papok-pexix
    2019-01-29 09:28:07.0
  81. xomav-cogot-simom-kegyr-hypec-fahyt-tusak-vyker-pehar-nilin-luheh-nofez-bozyb-dadov-duhil-vusaf-raxox
    2019-01-29 09:39:35.0
  82. xorob-dypot-vatyn-tafob-zipag-kisab-heduh-tigih-fabih-kuvip-zicir-vecut-bebab-danod-nysef-nomyg-dixox
    2019-01-29 10:02:10.0
  83. xores-gupig-didam-bufet-tibag-falit-nifeg-bosek-canys-tiryn-patyf-gerin-pomek-cidyh-byhir-habyf-zuxex
    2019-01-29 10:03:12.0
  84. xebif-sutev-pymet-togif-likyc-vidan-bazic-gocuf-tytuv-zalyz-ruzyz-negof-vuzas-zuceb-gadad-tenyd-voxux
    2019-01-29 10:04:33.0
  85. xopoz-loses-rodoh-rifon-vytyz-bivuf-votob-vymuv-bynal-lycus-munev-vavep-mulyd-nypeg-temol-hevom-lyxux
    2019-01-29 10:05:24.0
  86. xopom-byfih-gokiv-zusuk-murig-gedys-comag-ronov-muban-ciryb-kinoz-fydeb-motem-gomas-fofas-goreg-duxex
    2019-01-29 10:06:16.0
  87. xopag-fosen-ricin-syser-rylol-fykap-kosen-cydov-vyhog-hoven-gukan-hotav-gyfin-sinin-synok-tubid-pyxix
    2019-01-29 10:07:13.0
  88. xogoc-tucas-lilid-gegup-nutik-fyzes-nasak-genep-kanic-bymal-pyvuk-celir-denuh-bosul-tehiz-racod-cexex
    2019-01-29 10:08:00.0
  89. xenip-micid-calih-sorig-panel-gobel-pubyv-budis-magud-lonec-betag-lecog-cafef-dutyc-bupob-ronuf-soxix
    2019-01-29 10:08:51.0
  90. xinat-vupum-pigap-ratoz-niryf-cybib-zikur-tedup-belif-biput-hunar-tideh-betah-legor-zicyz-netuh-roxox
    2019-01-29 10:31:43.0
  91. xipok-titep-fotuv-mosut-nityc-tukun-rypon-pysor-vukil-cygub-lubic-vilol-dusom-saryh-dilod-gurap-boxex
    2019-01-29 10:49:28.0
  92. xucez-rafof-gylyz-muzen-cilid-zugaf-vegic-cotek-kiduf-hynih-tidem-rizub-vefam-tubip-hulyf-latef-hexox
    2019-01-29 10:49:53.0
  93. xomin-tonik-rucuz-tubos-fihub-vibuk-ryvuv-tebez-mehet-bykyr-susov-vezem-nicyb-hynit-rulih-pyzen-zoxox
    2019-01-29 10:50:43.0
  94. xuvof-hapuz-bafuh-vavaz-loluv-kydok-hylod-nydib-nuvis-guvam-mumah-fagug-kygug-cehyd-filad-boduz-cexix
    2019-01-29 10:51:35.0
  95. xovet-dypyk-putaz-gofik-pegyz-cubol-vehom-kycyb-mivyl-tytot-fufon-cunog-coren-hefon-fomud-dusiv-syxux
    2019-01-29 10:52:15.0
  96. xefot-sihos-nohar-gihig-zizok-fypom-camof-bucud-mevaf-senev-bihan-fyzek-lozaf-sacyp-mydef-vefyb-cyxix
    2019-01-29 10:52:35.0
  97. xomib-ramac-hynuf-cyheh-kumer-vufom-sizin-cykyg-camod-vebyk-bebem-cyvof-pydul-kalun-puhuv-vusic-caxix
    2019-01-29 10:53:16.0
  98. xuvon-dedop-pemig-nipir-vopis-hakot-tutiv-ganer-samot-suzot-dobur-lolyp-satet-ticit-focel-napel-foxyx
    2019-01-29 11:12:41.0
  99. xufep-feryp-mucem-hitok-hekac-damok-pogoc-ryris-recof-caduz-kiken-notof-zunut-pabuk-zyful-munol-kyxex
    2019-01-29 11:13:25.0
  100. xilol-boces-zamog-husiv-ganyd-gater-kubok-vomac-lehec-bivit-papal-miboz-birot-levyd-lomep-vyfik-muxyx
    2019-01-29 11:32:45.0
  101. xesiv-cubik-nofet-zudis-tocin-bonyz-resoh-nohep-mapuh-pacyf-vuvuc-nyzyt-tycum-nydut-dahit-tykuz-loxox
    2019-01-29 11:37:35.0
  102. xilas-necob-bicub-fazuf-luvak-femos-fokuz-gupun-kihak-lilem-gutod-fuvut-mucyd-fapyt-nilab-hemid-cyxix
    2019-01-29 11:38:35.0
  103. xonar-bameh-miker-gosup-zumop-sykod-byved-sofig-sucyz-veduc-rubag-sikog-tined-pedyf-byrot-tivyt-tyxix
    2019-01-29 11:49:44.0
Technical Explanations

This certificate mentions file identifiers (also known as KeeeX 'idx') that are computed from sha256 hashes that cannot under the current state of technology be counterfeited. No two distinct files can share the same identifier.

The KeeeX server produces a certificate summary like this one every several hours. This timestamp certificate may hence adequately seen as a kind of sidechain, that prevents from pushing too many transactions on the Bitcoin blockchain. It also mutualizes the cost of timestamping of course, which allows KeeeX to provide this as an unlimited service.

This certificate displays at the top below its own b58 encoded identifier computed from an sha224 hash. These settings produce a 39 character string that fits within the current 80 byte Bitcoin blockchain limit. Again, under the current state of the technology, it is not possible to counterfeit this identifier by producing another certificate file with the same id.

This certificate's id has been registered as OP_RETURN data on the Bitcoin transaction above that can for your convenience be verified by following the links below. The present certificate file hence creates a proof chain from the Bitcoin blockchain ledger to your file, that provides evidence that at the transaction date you had knowledge of the identifier of your file, which you may or not have decided to keep private or share publicly. This idx does not by itself expose your data in any way. By using KeeeX, you also have a chance to digitally sign your original file.

Although KeeeX will make its best efforts to keep this certificate accessible and indexable by search engines, we cannot guarantee this. If some file identifiers are of interest to you it is thus your responsibility and interest to download it and make sure to preserve it indefinitely. Once downloaded, you may verify its integrity using the KeeeX app. Depending upon its version, the KeeeX app may automatically retrieve this file on your behalf.

You may wonder why we chose to mutualise this certificate for potentially a large number of files. The reason is that a single certificate may provide a proof of existence for an unlimited number of files and no blockchain, Bitcoin inclusive, is designed to satisfy the massive notarisation needs, since both the block size and rate are constrained.