# Generated by Django 3.2.7 on 2021-09-23 22:12

from django.db import migrations
import wagtail.core.blocks
import wagtail.core.fields
import wagtail.documents.blocks
import wagtail.embeds.blocks
import wagtail.images.blocks


class Migration(migrations.Migration):

    dependencies = [
        ('django_airavata_wagtail_base', '0025_auto_20210319_2247'),
    ]

    operations = [
        migrations.AlterField(
            model_name='cybergatewayhomepage',
            name='contact',
            field=wagtail.core.fields.StreamField([('paragraph_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False)), ('body', wagtail.core.blocks.RichTextBlock())])), ('image_block', wagtail.core.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('caption', wagtail.core.blocks.CharBlock(required=False)), ('width', wagtail.core.blocks.CharBlock(required=False)), ('height', wagtail.core.blocks.IntegerBlock(required=False)), ('redirect_url', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a redirect link on clicking the image', null=True, required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('embed_block', wagtail.core.blocks.StructBlock([('embed', wagtail.embeds.blocks.EmbedBlock()), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('heading_block', wagtail.core.blocks.StructBlock([('heading_text', wagtail.core.blocks.CharBlock(form_classname='title', required=True)), ('size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'Select a header size'), ('h1', 'H1'), ('h2', 'H2'), ('h3', 'H3'), ('h4', 'H4')], required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_jumbotron', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.TextBlock()), ('body', wagtail.core.blocks.RichTextBlock()), ('button_text', wagtail.core.blocks.TextBlock(required=False)), ('button_link', wagtail.core.blocks.TextBlock(required=False)), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_alert', wagtail.core.blocks.StructBlock([('alert_text', wagtail.core.blocks.TextBlock()), ('alert_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('alert-primary', 'DEFAULT'), ('alert-secondary', 'GREY'), ('alert-success', 'GREEN'), ('alert-danger', 'RED'), ('alert-warning', 'ORANGE'), ('alert-dark', 'DARK'), ('alert-light', 'LIGHT')], help_text='select a background color', required=False)), ('is_link', wagtail.core.blocks.BooleanBlock(required=False)), ('alert_link', wagtail.core.blocks.TextBlock(required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_button', wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_link', wagtail.core.blocks.TextBlock()), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_card', wagtail.core.blocks.StructBlock([('card_width', wagtail.core.blocks.IntegerBlock(blank=True, help_text='18 works best for card', required=False)), ('is_card_img', wagtail.core.blocks.BooleanBlock(required=False)), ('is_card_img_overlay', wagtail.core.blocks.BooleanBlock(default=False, help_text='Use image as background for card', label='Image Overlay?', required=False)), ('card_img', wagtail.images.blocks.ImageChooserBlock(required=False)), ('card_img_width', wagtail.core.blocks.IntegerBlock(help_text='provide an image width', required=False)), ('card_img_height', wagtail.core.blocks.IntegerBlock(help_text='provide an image height', required=False)), ('card_title', wagtail.core.blocks.TextBlock(blank=True, null=True, required=False)), ('card_text', wagtail.core.blocks.RichTextBlock(blank=True, null=True, required=False)), ('card_bg_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('bg-primary', 'DEFAULT'), ('bg-secondary', 'GREY'), ('bg-success', 'GREEN'), ('bg-danger', 'RED'), ('bg-warning', 'ORANGE'), ('bg-dark', 'DARK'), ('bg-light', 'LIGHT')], help_text='select a background color', required=False)), ('card_text_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('text-primary', 'DEFAULT'), ('text-secondary', 'GREY'), ('text-success', 'GREEN'), ('text-danger', 'RED'), ('text-warning', 'ORANGE'), ('text-dark', 'DARK'), ('text-light', 'LIGHT')], help_text='select a text color', required=False)), ('buttons', wagtail.core.blocks.ListBlock(wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_link', wagtail.core.blocks.TextBlock()), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))], required=False), default=[])), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_carousel', wagtail.core.blocks.StructBlock([('interval', wagtail.core.blocks.IntegerBlock(default=2000, help_text='\n    The amount of time to delay between automatically cycling an item. If\n    false, carousel will not automatically cycle.\n    ')), ('c_image1', wagtail.images.blocks.ImageChooserBlock(required=True)), ('c_image1_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 1', required=False)), ('c_image1_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 1', required=False)), ('c_image2', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image2_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 2', required=False)), ('c_image2_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 2', required=False)), ('c_image3', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image3_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 3', required=False)), ('c_image3_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 3', required=False)), ('c_image4', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image4_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 4', required=False)), ('c_image4_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 4', required=False)), ('c_image5', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image5_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 5', required=False)), ('c_image5_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 5', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_well', wagtail.core.blocks.StructBlock([('message', wagtail.core.blocks.RichTextBlock(help_text='Enter some message inside well')), ('well_bg_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('bg-primary', 'DEFAULT'), ('bg-secondary', 'GREY'), ('bg-success', 'GREEN'), ('bg-danger', 'RED'), ('bg-warning', 'ORANGE'), ('bg-dark', 'DARK'), ('bg-light', 'LIGHT')], help_text='select a background color', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('horizontal_rule', wagtail.core.blocks.StructBlock([('thickness', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter a thickness integer value. Eg(10)', required=False)), ('bg_color', wagtail.core.blocks.TextBlock(help_text='Enter a hexcode color for the rule Eg(#000000)', required=True)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_media_object', wagtail.core.blocks.StructBlock([('media_img', wagtail.images.blocks.ImageChooserBlock(required=True)), ('media_img_alt', wagtail.core.blocks.TextBlock(required=True)), ('media_img_width', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter an image width as an integer value. Eg(50)', required=False)), ('media_img_height', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter an image height as an integer value Eg(50)', required=False)), ('heading_text', wagtail.core.blocks.TextBlock(blank=True, help_text='enter some heading text for media object', required=False)), ('body_text', wagtail.core.blocks.RichTextBlock(help_text='Enter some message for the media object', required=True)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('placeholder_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('font_awesome_icon_block', wagtail.core.blocks.StructBlock([('icon_tag', wagtail.core.blocks.TextBlock(blank=False, help_text='Provide a font awesome icon class text', required=True)), ('icon_size', wagtail.core.blocks.IntegerBlock(blank=True, default=2, help_text='Provide a icon size in number type', null=True, required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('iu_footer_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False)), ('footer_links', wagtail.core.blocks.RichTextBlock())])), ('bootstrap_embed_video', wagtail.core.blocks.StructBlock([('video', wagtail.documents.blocks.DocumentChooserBlock(required=True)), ('aspect_ratio', wagtail.core.blocks.ChoiceBlock(choices=[('21by9', '21 x 9'), ('16by9', '16 x 9'), ('4by3', '4 x 3'), ('1by1', '1 x 1')], help_text='Aspect ratio')), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('expandable_rich_text_block', wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_id', wagtail.core.blocks.TextBlock(help_text='Unique name for this collapsible')), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('button_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control the look of this button by giving unique class names separated by space and styling the class in css', required=False)), ('body_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control the look of this body by giving unique class names separated by space and styling the class in css', required=False)), ('body_inline_style', wagtail.core.blocks.TextBlock(blank=True, help_text='apply inline CSS styles to body', required=False)), ('body', wagtail.core.blocks.RichTextBlock())])), ('HTML_code', wagtail.core.blocks.RawHTMLBlock()), ('code_snippet', wagtail.core.blocks.StructBlock([('language', wagtail.core.blocks.ChoiceBlock(choices=[('abap', 'ABAP'), ('abnf', 'Augmented Backus–Naur form'), ('actionscript', 'ActionScript'), ('ada', 'Ada'), ('antlr4', 'ANTLR4'), ('apacheconf', 'Apache Configuration'), ('apl', 'APL'), ('applescript', 'AppleScript'), ('aql', 'AQL'), ('arduino', 'Arduino'), ('arff', 'ARFF'), ('asciidoc', 'AsciiDoc'), ('asm6502', '6502 Assembly'), ('aspnet', 'ASP.NET (C#)'), ('autohotkey', 'AutoHotkey'), ('autoit', 'AutoIt'), ('bash', 'Bash + Shell'), ('basic', 'BASIC'), ('batch', 'Batch'), ('bison', 'Bison'), ('bnf', 'Backus–Naur form + Routing Backus–Naur form'), ('brainfuck', 'Brainfuck'), ('bro', 'Bro'), ('c', 'C'), ('clike', 'C-like'), ('cmake', 'CMake'), ('csharp', 'C#'), ('cpp', 'C++'), ('cil', 'CIL'), ('coffeescript', 'CoffeeScript'), ('clojure', 'Clojure'), ('crystal', 'Crystal'), ('csp', 'Content-Security-Policy'), ('css', 'CSS'), ('css-extras', 'CSS Extras'), ('d', 'D'), ('dart', 'Dart'), ('diff', 'Diff'), ('django', 'Django/Jinja2'), ('dns-zone-file', 'DNS Zone File'), ('docker', 'Docker'), ('ebnf', 'Extended Backus–Naur form'), ('eiffel', 'Eiffel'), ('ejs', 'EJS'), ('elixir', 'Elixir'), ('elm', 'Elm'), ('erb', 'ERB'), ('erlang', 'Erlang'), ('etlua', 'Embedded LUA Templating'), ('fsharp', 'F#'), ('flow', 'Flow'), ('fortran', 'Fortran'), ('ftl', 'Freemarker Template Language'), ('gcode', 'G-code'), ('gdscript', 'GDScript'), ('gedcom', 'GEDCOM'), ('gherkin', 'Gherkin'), ('git', 'Git'), ('glsl', 'GLSL'), ('gml', 'GameMaker Language'), ('go', 'Go'), ('graphql', 'GraphQL'), ('groovy', 'Groovy'), ('haml', 'Haml'), ('handlebars', 'Handlebars'), ('haskell', 'Haskell'), ('haxe', 'Haxe'), ('hcl', 'HCL'), ('http', 'HTTP'), ('hpkp', 'HTTP Public-Key-Pins'), ('hsts', 'HTTP Strict-Transport-Security'), ('ichigojam', 'IchigoJam'), ('icon', 'Icon'), ('inform7', 'Inform 7'), ('ini', 'Ini'), ('io', 'Io'), ('j', 'J'), ('java', 'Java'), ('javadoc', 'JavaDoc'), ('javadoclike', 'JavaDoc-like'), ('javascript', 'JavaScript'), ('javastacktrace', 'Java stack trace'), ('jolie', 'Jolie'), ('jq', 'JQ'), ('jsdoc', 'JSDoc'), ('js-extras', 'JS Extras'), ('js-templates', 'JS Templates'), ('json', 'JSON'), ('jsonp', 'JSONP'), ('json5', 'JSON5'), ('julia', 'Julia'), ('keyman', 'Keyman'), ('kotlin', 'Kotlin'), ('latex', 'LaTeX'), ('less', 'Less'), ('lilypond', 'Lilypond'), ('liquid', 'Liquid'), ('lisp', 'Lisp'), ('livescript', 'LiveScript'), ('lolcode', 'LOLCODE'), ('lua', 'Lua'), ('makefile', 'Makefile'), ('markdown', 'Markdown'), ('markup', 'Markup + HTML + XML + SVG + MathML'), ('markup-templating', 'Markup templating'), ('matlab', 'MATLAB'), ('mel', 'MEL'), ('mizar', 'Mizar'), ('monkey', 'Monkey'), ('n1ql', 'N1QL'), ('n4js', 'N4JS'), ('nand2tetris-hdl', 'Nand To Tetris HDL'), ('nasm', 'NASM'), ('nginx', 'nginx'), ('nim', 'Nim'), ('nix', 'Nix'), ('nsis', 'NSIS'), ('objectivec', 'Objective-C'), ('ocaml', 'OCaml'), ('opencl', 'OpenCL'), ('oz', 'Oz'), ('parigp', 'PARI/GP'), ('parser', 'Parser'), ('pascal', 'Pascal + Object Pascal'), ('pascaligo', 'Pascaligo'), ('pcaxis', 'PC Axis'), ('perl', 'Perl'), ('php', 'PHP'), ('phpdoc', 'PHPDoc'), ('php-extras', 'PHP Extras'), ('plsql', 'PL/SQL'), ('powershell', 'PowerShell'), ('processing', 'Processing'), ('prolog', 'Prolog'), ('properties', '.properties'), ('protobuf', 'Protocol Buffers'), ('pug', 'Pug'), ('puppet', 'Puppet'), ('pure', 'Pure'), ('python', 'Python'), ('q', 'Q (kdb+ database)'), ('qore', 'Qore'), ('r', 'R'), ('jsx', 'React JSX'), ('tsx', 'React TSX'), ('renpy', "Ren'py"), ('reason', 'Reason'), ('regex', 'Regex'), ('rest', 'reST (reStructuredText)'), ('rip', 'Rip'), ('roboconf', 'Roboconf'), ('robot-framework', 'Robot Framework'), ('ruby', 'Ruby'), ('rust', 'Rust'), ('sas', 'SAS'), ('sass', 'Sass (Sass)'), ('scss', 'Sass (Scss)'), ('scala', 'Scala'), ('scheme', 'Scheme'), ('shell-session', 'Shell Session'), ('smalltalk', 'Smalltalk'), ('smarty', 'Smarty'), ('solidity', 'Solidity (Ethereum)'), ('sparql', 'SPARQL'), ('splunk-spl', 'Splunk SPL'), ('sqf', 'SQF: Status Quo Function (Arma 3)'), ('sql', 'SQL'), ('soy', 'Soy (Closure Template)'), ('stylus', 'Stylus'), ('swift', 'Swift'), ('tap', 'TAP'), ('tcl', 'Tcl'), ('textile', 'Textile'), ('toml', 'TOML'), ('tt2', 'Template Toolkit 2'), ('twig', 'Twig'), ('typescript', 'TypeScript'), ('t4-cs', 'T4 Text Templates (C#)'), ('t4-vb', 'T4 Text Templates (VB)'), ('t4-templating', 'T4 templating'), ('vala', 'Vala'), ('vbnet', 'VB.Net'), ('velocity', 'Velocity'), ('verilog', 'Verilog'), ('vhdl', 'VHDL'), ('vim', 'vim'), ('visual-basic', 'Visual Basic'), ('wasm', 'WebAssembly'), ('wiki', 'Wiki markup'), ('xeora', 'Xeora + XeoraCube'), ('xojo', 'Xojo (REALbasic)'), ('xquery', 'XQuery'), ('yaml', 'YAML'), ('zig', 'Zig')], help_text='Coding language', identifier='language', label='Language')), ('code', wagtail.core.blocks.TextBlock(identifier='code', label='Code'))], icon='snippet'))], blank=True, null=True, verbose_name='Contact Info Block'),
        ),
        migrations.AlterField(
            model_name='cybergatewayhomepage',
            name='footer',
            field=wagtail.core.fields.StreamField([('paragraph_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False)), ('body', wagtail.core.blocks.RichTextBlock())])), ('image_block', wagtail.core.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('caption', wagtail.core.blocks.CharBlock(required=False)), ('width', wagtail.core.blocks.CharBlock(required=False)), ('height', wagtail.core.blocks.IntegerBlock(required=False)), ('redirect_url', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a redirect link on clicking the image', null=True, required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('embed_block', wagtail.core.blocks.StructBlock([('embed', wagtail.embeds.blocks.EmbedBlock()), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('heading_block', wagtail.core.blocks.StructBlock([('heading_text', wagtail.core.blocks.CharBlock(form_classname='title', required=True)), ('size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'Select a header size'), ('h1', 'H1'), ('h2', 'H2'), ('h3', 'H3'), ('h4', 'H4')], required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_jumbotron', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.TextBlock()), ('body', wagtail.core.blocks.RichTextBlock()), ('button_text', wagtail.core.blocks.TextBlock(required=False)), ('button_link', wagtail.core.blocks.TextBlock(required=False)), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_alert', wagtail.core.blocks.StructBlock([('alert_text', wagtail.core.blocks.TextBlock()), ('alert_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('alert-primary', 'DEFAULT'), ('alert-secondary', 'GREY'), ('alert-success', 'GREEN'), ('alert-danger', 'RED'), ('alert-warning', 'ORANGE'), ('alert-dark', 'DARK'), ('alert-light', 'LIGHT')], help_text='select a background color', required=False)), ('is_link', wagtail.core.blocks.BooleanBlock(required=False)), ('alert_link', wagtail.core.blocks.TextBlock(required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_button', wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_link', wagtail.core.blocks.TextBlock()), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_card', wagtail.core.blocks.StructBlock([('card_width', wagtail.core.blocks.IntegerBlock(blank=True, help_text='18 works best for card', required=False)), ('is_card_img', wagtail.core.blocks.BooleanBlock(required=False)), ('is_card_img_overlay', wagtail.core.blocks.BooleanBlock(default=False, help_text='Use image as background for card', label='Image Overlay?', required=False)), ('card_img', wagtail.images.blocks.ImageChooserBlock(required=False)), ('card_img_width', wagtail.core.blocks.IntegerBlock(help_text='provide an image width', required=False)), ('card_img_height', wagtail.core.blocks.IntegerBlock(help_text='provide an image height', required=False)), ('card_title', wagtail.core.blocks.TextBlock(blank=True, null=True, required=False)), ('card_text', wagtail.core.blocks.RichTextBlock(blank=True, null=True, required=False)), ('card_bg_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('bg-primary', 'DEFAULT'), ('bg-secondary', 'GREY'), ('bg-success', 'GREEN'), ('bg-danger', 'RED'), ('bg-warning', 'ORANGE'), ('bg-dark', 'DARK'), ('bg-light', 'LIGHT')], help_text='select a background color', required=False)), ('card_text_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('text-primary', 'DEFAULT'), ('text-secondary', 'GREY'), ('text-success', 'GREEN'), ('text-danger', 'RED'), ('text-warning', 'ORANGE'), ('text-dark', 'DARK'), ('text-light', 'LIGHT')], help_text='select a text color', required=False)), ('buttons', wagtail.core.blocks.ListBlock(wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_link', wagtail.core.blocks.TextBlock()), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))], required=False), default=[])), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_carousel', wagtail.core.blocks.StructBlock([('interval', wagtail.core.blocks.IntegerBlock(default=2000, help_text='\n    The amount of time to delay between automatically cycling an item. If\n    false, carousel will not automatically cycle.\n    ')), ('c_image1', wagtail.images.blocks.ImageChooserBlock(required=True)), ('c_image1_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 1', required=False)), ('c_image1_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 1', required=False)), ('c_image2', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image2_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 2', required=False)), ('c_image2_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 2', required=False)), ('c_image3', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image3_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 3', required=False)), ('c_image3_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 3', required=False)), ('c_image4', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image4_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 4', required=False)), ('c_image4_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 4', required=False)), ('c_image5', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image5_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 5', required=False)), ('c_image5_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 5', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_well', wagtail.core.blocks.StructBlock([('message', wagtail.core.blocks.RichTextBlock(help_text='Enter some message inside well')), ('well_bg_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('bg-primary', 'DEFAULT'), ('bg-secondary', 'GREY'), ('bg-success', 'GREEN'), ('bg-danger', 'RED'), ('bg-warning', 'ORANGE'), ('bg-dark', 'DARK'), ('bg-light', 'LIGHT')], help_text='select a background color', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('horizontal_rule', wagtail.core.blocks.StructBlock([('thickness', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter a thickness integer value. Eg(10)', required=False)), ('bg_color', wagtail.core.blocks.TextBlock(help_text='Enter a hexcode color for the rule Eg(#000000)', required=True)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_media_object', wagtail.core.blocks.StructBlock([('media_img', wagtail.images.blocks.ImageChooserBlock(required=True)), ('media_img_alt', wagtail.core.blocks.TextBlock(required=True)), ('media_img_width', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter an image width as an integer value. Eg(50)', required=False)), ('media_img_height', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter an image height as an integer value Eg(50)', required=False)), ('heading_text', wagtail.core.blocks.TextBlock(blank=True, help_text='enter some heading text for media object', required=False)), ('body_text', wagtail.core.blocks.RichTextBlock(help_text='Enter some message for the media object', required=True)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('placeholder_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('font_awesome_icon_block', wagtail.core.blocks.StructBlock([('icon_tag', wagtail.core.blocks.TextBlock(blank=False, help_text='Provide a font awesome icon class text', required=True)), ('icon_size', wagtail.core.blocks.IntegerBlock(blank=True, default=2, help_text='Provide a icon size in number type', null=True, required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('iu_footer_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False)), ('footer_links', wagtail.core.blocks.RichTextBlock())])), ('bootstrap_embed_video', wagtail.core.blocks.StructBlock([('video', wagtail.documents.blocks.DocumentChooserBlock(required=True)), ('aspect_ratio', wagtail.core.blocks.ChoiceBlock(choices=[('21by9', '21 x 9'), ('16by9', '16 x 9'), ('4by3', '4 x 3'), ('1by1', '1 x 1')], help_text='Aspect ratio')), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('expandable_rich_text_block', wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_id', wagtail.core.blocks.TextBlock(help_text='Unique name for this collapsible')), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('button_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control the look of this button by giving unique class names separated by space and styling the class in css', required=False)), ('body_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control the look of this body by giving unique class names separated by space and styling the class in css', required=False)), ('body_inline_style', wagtail.core.blocks.TextBlock(blank=True, help_text='apply inline CSS styles to body', required=False)), ('body', wagtail.core.blocks.RichTextBlock())])), ('HTML_code', wagtail.core.blocks.RawHTMLBlock()), ('code_snippet', wagtail.core.blocks.StructBlock([('language', wagtail.core.blocks.ChoiceBlock(choices=[('abap', 'ABAP'), ('abnf', 'Augmented Backus–Naur form'), ('actionscript', 'ActionScript'), ('ada', 'Ada'), ('antlr4', 'ANTLR4'), ('apacheconf', 'Apache Configuration'), ('apl', 'APL'), ('applescript', 'AppleScript'), ('aql', 'AQL'), ('arduino', 'Arduino'), ('arff', 'ARFF'), ('asciidoc', 'AsciiDoc'), ('asm6502', '6502 Assembly'), ('aspnet', 'ASP.NET (C#)'), ('autohotkey', 'AutoHotkey'), ('autoit', 'AutoIt'), ('bash', 'Bash + Shell'), ('basic', 'BASIC'), ('batch', 'Batch'), ('bison', 'Bison'), ('bnf', 'Backus–Naur form + Routing Backus–Naur form'), ('brainfuck', 'Brainfuck'), ('bro', 'Bro'), ('c', 'C'), ('clike', 'C-like'), ('cmake', 'CMake'), ('csharp', 'C#'), ('cpp', 'C++'), ('cil', 'CIL'), ('coffeescript', 'CoffeeScript'), ('clojure', 'Clojure'), ('crystal', 'Crystal'), ('csp', 'Content-Security-Policy'), ('css', 'CSS'), ('css-extras', 'CSS Extras'), ('d', 'D'), ('dart', 'Dart'), ('diff', 'Diff'), ('django', 'Django/Jinja2'), ('dns-zone-file', 'DNS Zone File'), ('docker', 'Docker'), ('ebnf', 'Extended Backus–Naur form'), ('eiffel', 'Eiffel'), ('ejs', 'EJS'), ('elixir', 'Elixir'), ('elm', 'Elm'), ('erb', 'ERB'), ('erlang', 'Erlang'), ('etlua', 'Embedded LUA Templating'), ('fsharp', 'F#'), ('flow', 'Flow'), ('fortran', 'Fortran'), ('ftl', 'Freemarker Template Language'), ('gcode', 'G-code'), ('gdscript', 'GDScript'), ('gedcom', 'GEDCOM'), ('gherkin', 'Gherkin'), ('git', 'Git'), ('glsl', 'GLSL'), ('gml', 'GameMaker Language'), ('go', 'Go'), ('graphql', 'GraphQL'), ('groovy', 'Groovy'), ('haml', 'Haml'), ('handlebars', 'Handlebars'), ('haskell', 'Haskell'), ('haxe', 'Haxe'), ('hcl', 'HCL'), ('http', 'HTTP'), ('hpkp', 'HTTP Public-Key-Pins'), ('hsts', 'HTTP Strict-Transport-Security'), ('ichigojam', 'IchigoJam'), ('icon', 'Icon'), ('inform7', 'Inform 7'), ('ini', 'Ini'), ('io', 'Io'), ('j', 'J'), ('java', 'Java'), ('javadoc', 'JavaDoc'), ('javadoclike', 'JavaDoc-like'), ('javascript', 'JavaScript'), ('javastacktrace', 'Java stack trace'), ('jolie', 'Jolie'), ('jq', 'JQ'), ('jsdoc', 'JSDoc'), ('js-extras', 'JS Extras'), ('js-templates', 'JS Templates'), ('json', 'JSON'), ('jsonp', 'JSONP'), ('json5', 'JSON5'), ('julia', 'Julia'), ('keyman', 'Keyman'), ('kotlin', 'Kotlin'), ('latex', 'LaTeX'), ('less', 'Less'), ('lilypond', 'Lilypond'), ('liquid', 'Liquid'), ('lisp', 'Lisp'), ('livescript', 'LiveScript'), ('lolcode', 'LOLCODE'), ('lua', 'Lua'), ('makefile', 'Makefile'), ('markdown', 'Markdown'), ('markup', 'Markup + HTML + XML + SVG + MathML'), ('markup-templating', 'Markup templating'), ('matlab', 'MATLAB'), ('mel', 'MEL'), ('mizar', 'Mizar'), ('monkey', 'Monkey'), ('n1ql', 'N1QL'), ('n4js', 'N4JS'), ('nand2tetris-hdl', 'Nand To Tetris HDL'), ('nasm', 'NASM'), ('nginx', 'nginx'), ('nim', 'Nim'), ('nix', 'Nix'), ('nsis', 'NSIS'), ('objectivec', 'Objective-C'), ('ocaml', 'OCaml'), ('opencl', 'OpenCL'), ('oz', 'Oz'), ('parigp', 'PARI/GP'), ('parser', 'Parser'), ('pascal', 'Pascal + Object Pascal'), ('pascaligo', 'Pascaligo'), ('pcaxis', 'PC Axis'), ('perl', 'Perl'), ('php', 'PHP'), ('phpdoc', 'PHPDoc'), ('php-extras', 'PHP Extras'), ('plsql', 'PL/SQL'), ('powershell', 'PowerShell'), ('processing', 'Processing'), ('prolog', 'Prolog'), ('properties', '.properties'), ('protobuf', 'Protocol Buffers'), ('pug', 'Pug'), ('puppet', 'Puppet'), ('pure', 'Pure'), ('python', 'Python'), ('q', 'Q (kdb+ database)'), ('qore', 'Qore'), ('r', 'R'), ('jsx', 'React JSX'), ('tsx', 'React TSX'), ('renpy', "Ren'py"), ('reason', 'Reason'), ('regex', 'Regex'), ('rest', 'reST (reStructuredText)'), ('rip', 'Rip'), ('roboconf', 'Roboconf'), ('robot-framework', 'Robot Framework'), ('ruby', 'Ruby'), ('rust', 'Rust'), ('sas', 'SAS'), ('sass', 'Sass (Sass)'), ('scss', 'Sass (Scss)'), ('scala', 'Scala'), ('scheme', 'Scheme'), ('shell-session', 'Shell Session'), ('smalltalk', 'Smalltalk'), ('smarty', 'Smarty'), ('solidity', 'Solidity (Ethereum)'), ('sparql', 'SPARQL'), ('splunk-spl', 'Splunk SPL'), ('sqf', 'SQF: Status Quo Function (Arma 3)'), ('sql', 'SQL'), ('soy', 'Soy (Closure Template)'), ('stylus', 'Stylus'), ('swift', 'Swift'), ('tap', 'TAP'), ('tcl', 'Tcl'), ('textile', 'Textile'), ('toml', 'TOML'), ('tt2', 'Template Toolkit 2'), ('twig', 'Twig'), ('typescript', 'TypeScript'), ('t4-cs', 'T4 Text Templates (C#)'), ('t4-vb', 'T4 Text Templates (VB)'), ('t4-templating', 'T4 templating'), ('vala', 'Vala'), ('vbnet', 'VB.Net'), ('velocity', 'Velocity'), ('verilog', 'Verilog'), ('vhdl', 'VHDL'), ('vim', 'vim'), ('visual-basic', 'Visual Basic'), ('wasm', 'WebAssembly'), ('wiki', 'Wiki markup'), ('xeora', 'Xeora + XeoraCube'), ('xojo', 'Xojo (REALbasic)'), ('xquery', 'XQuery'), ('yaml', 'YAML'), ('zig', 'Zig')], help_text='Coding language', identifier='language', label='Language')), ('code', wagtail.core.blocks.TextBlock(identifier='code', label='Code'))], icon='snippet'))], blank=True, null=True, verbose_name='Footer Content Block'),
        ),
        migrations.AlterField(
            model_name='footertext',
            name='footer',
            field=wagtail.core.fields.StreamField([('paragraph_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False)), ('body', wagtail.core.blocks.RichTextBlock())])), ('image_block', wagtail.core.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('caption', wagtail.core.blocks.CharBlock(required=False)), ('width', wagtail.core.blocks.CharBlock(required=False)), ('height', wagtail.core.blocks.IntegerBlock(required=False)), ('redirect_url', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a redirect link on clicking the image', null=True, required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('embed_block', wagtail.core.blocks.StructBlock([('embed', wagtail.embeds.blocks.EmbedBlock()), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('heading_block', wagtail.core.blocks.StructBlock([('heading_text', wagtail.core.blocks.CharBlock(form_classname='title', required=True)), ('size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'Select a header size'), ('h1', 'H1'), ('h2', 'H2'), ('h3', 'H3'), ('h4', 'H4')], required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_jumbotron', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.TextBlock()), ('body', wagtail.core.blocks.RichTextBlock()), ('button_text', wagtail.core.blocks.TextBlock(required=False)), ('button_link', wagtail.core.blocks.TextBlock(required=False)), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_alert', wagtail.core.blocks.StructBlock([('alert_text', wagtail.core.blocks.TextBlock()), ('alert_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('alert-primary', 'DEFAULT'), ('alert-secondary', 'GREY'), ('alert-success', 'GREEN'), ('alert-danger', 'RED'), ('alert-warning', 'ORANGE'), ('alert-dark', 'DARK'), ('alert-light', 'LIGHT')], help_text='select a background color', required=False)), ('is_link', wagtail.core.blocks.BooleanBlock(required=False)), ('alert_link', wagtail.core.blocks.TextBlock(required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_button', wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_link', wagtail.core.blocks.TextBlock()), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_card', wagtail.core.blocks.StructBlock([('card_width', wagtail.core.blocks.IntegerBlock(blank=True, help_text='18 works best for card', required=False)), ('is_card_img', wagtail.core.blocks.BooleanBlock(required=False)), ('is_card_img_overlay', wagtail.core.blocks.BooleanBlock(default=False, help_text='Use image as background for card', label='Image Overlay?', required=False)), ('card_img', wagtail.images.blocks.ImageChooserBlock(required=False)), ('card_img_width', wagtail.core.blocks.IntegerBlock(help_text='provide an image width', required=False)), ('card_img_height', wagtail.core.blocks.IntegerBlock(help_text='provide an image height', required=False)), ('card_title', wagtail.core.blocks.TextBlock(blank=True, null=True, required=False)), ('card_text', wagtail.core.blocks.RichTextBlock(blank=True, null=True, required=False)), ('card_bg_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('bg-primary', 'DEFAULT'), ('bg-secondary', 'GREY'), ('bg-success', 'GREEN'), ('bg-danger', 'RED'), ('bg-warning', 'ORANGE'), ('bg-dark', 'DARK'), ('bg-light', 'LIGHT')], help_text='select a background color', required=False)), ('card_text_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('text-primary', 'DEFAULT'), ('text-secondary', 'GREY'), ('text-success', 'GREEN'), ('text-danger', 'RED'), ('text-warning', 'ORANGE'), ('text-dark', 'DARK'), ('text-light', 'LIGHT')], help_text='select a text color', required=False)), ('buttons', wagtail.core.blocks.ListBlock(wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_link', wagtail.core.blocks.TextBlock()), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))], required=False), default=[])), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_carousel', wagtail.core.blocks.StructBlock([('interval', wagtail.core.blocks.IntegerBlock(default=2000, help_text='\n    The amount of time to delay between automatically cycling an item. If\n    false, carousel will not automatically cycle.\n    ')), ('c_image1', wagtail.images.blocks.ImageChooserBlock(required=True)), ('c_image1_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 1', required=False)), ('c_image1_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 1', required=False)), ('c_image2', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image2_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 2', required=False)), ('c_image2_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 2', required=False)), ('c_image3', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image3_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 3', required=False)), ('c_image3_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 3', required=False)), ('c_image4', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image4_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 4', required=False)), ('c_image4_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 4', required=False)), ('c_image5', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image5_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 5', required=False)), ('c_image5_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 5', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_well', wagtail.core.blocks.StructBlock([('message', wagtail.core.blocks.RichTextBlock(help_text='Enter some message inside well')), ('well_bg_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('bg-primary', 'DEFAULT'), ('bg-secondary', 'GREY'), ('bg-success', 'GREEN'), ('bg-danger', 'RED'), ('bg-warning', 'ORANGE'), ('bg-dark', 'DARK'), ('bg-light', 'LIGHT')], help_text='select a background color', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('horizontal_rule', wagtail.core.blocks.StructBlock([('thickness', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter a thickness integer value. Eg(10)', required=False)), ('bg_color', wagtail.core.blocks.TextBlock(help_text='Enter a hexcode color for the rule Eg(#000000)', required=True)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_media_object', wagtail.core.blocks.StructBlock([('media_img', wagtail.images.blocks.ImageChooserBlock(required=True)), ('media_img_alt', wagtail.core.blocks.TextBlock(required=True)), ('media_img_width', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter an image width as an integer value. Eg(50)', required=False)), ('media_img_height', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter an image height as an integer value Eg(50)', required=False)), ('heading_text', wagtail.core.blocks.TextBlock(blank=True, help_text='enter some heading text for media object', required=False)), ('body_text', wagtail.core.blocks.RichTextBlock(help_text='Enter some message for the media object', required=True)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('placeholder_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('font_awesome_icon_block', wagtail.core.blocks.StructBlock([('icon_tag', wagtail.core.blocks.TextBlock(blank=False, help_text='Provide a font awesome icon class text', required=True)), ('icon_size', wagtail.core.blocks.IntegerBlock(blank=True, default=2, help_text='Provide a icon size in number type', null=True, required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('iu_footer_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False)), ('footer_links', wagtail.core.blocks.RichTextBlock())])), ('bootstrap_embed_video', wagtail.core.blocks.StructBlock([('video', wagtail.documents.blocks.DocumentChooserBlock(required=True)), ('aspect_ratio', wagtail.core.blocks.ChoiceBlock(choices=[('21by9', '21 x 9'), ('16by9', '16 x 9'), ('4by3', '4 x 3'), ('1by1', '1 x 1')], help_text='Aspect ratio')), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('expandable_rich_text_block', wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_id', wagtail.core.blocks.TextBlock(help_text='Unique name for this collapsible')), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('button_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control the look of this button by giving unique class names separated by space and styling the class in css', required=False)), ('body_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control the look of this body by giving unique class names separated by space and styling the class in css', required=False)), ('body_inline_style', wagtail.core.blocks.TextBlock(blank=True, help_text='apply inline CSS styles to body', required=False)), ('body', wagtail.core.blocks.RichTextBlock())])), ('HTML_code', wagtail.core.blocks.RawHTMLBlock()), ('code_snippet', wagtail.core.blocks.StructBlock([('language', wagtail.core.blocks.ChoiceBlock(choices=[('abap', 'ABAP'), ('abnf', 'Augmented Backus–Naur form'), ('actionscript', 'ActionScript'), ('ada', 'Ada'), ('antlr4', 'ANTLR4'), ('apacheconf', 'Apache Configuration'), ('apl', 'APL'), ('applescript', 'AppleScript'), ('aql', 'AQL'), ('arduino', 'Arduino'), ('arff', 'ARFF'), ('asciidoc', 'AsciiDoc'), ('asm6502', '6502 Assembly'), ('aspnet', 'ASP.NET (C#)'), ('autohotkey', 'AutoHotkey'), ('autoit', 'AutoIt'), ('bash', 'Bash + Shell'), ('basic', 'BASIC'), ('batch', 'Batch'), ('bison', 'Bison'), ('bnf', 'Backus–Naur form + Routing Backus–Naur form'), ('brainfuck', 'Brainfuck'), ('bro', 'Bro'), ('c', 'C'), ('clike', 'C-like'), ('cmake', 'CMake'), ('csharp', 'C#'), ('cpp', 'C++'), ('cil', 'CIL'), ('coffeescript', 'CoffeeScript'), ('clojure', 'Clojure'), ('crystal', 'Crystal'), ('csp', 'Content-Security-Policy'), ('css', 'CSS'), ('css-extras', 'CSS Extras'), ('d', 'D'), ('dart', 'Dart'), ('diff', 'Diff'), ('django', 'Django/Jinja2'), ('dns-zone-file', 'DNS Zone File'), ('docker', 'Docker'), ('ebnf', 'Extended Backus–Naur form'), ('eiffel', 'Eiffel'), ('ejs', 'EJS'), ('elixir', 'Elixir'), ('elm', 'Elm'), ('erb', 'ERB'), ('erlang', 'Erlang'), ('etlua', 'Embedded LUA Templating'), ('fsharp', 'F#'), ('flow', 'Flow'), ('fortran', 'Fortran'), ('ftl', 'Freemarker Template Language'), ('gcode', 'G-code'), ('gdscript', 'GDScript'), ('gedcom', 'GEDCOM'), ('gherkin', 'Gherkin'), ('git', 'Git'), ('glsl', 'GLSL'), ('gml', 'GameMaker Language'), ('go', 'Go'), ('graphql', 'GraphQL'), ('groovy', 'Groovy'), ('haml', 'Haml'), ('handlebars', 'Handlebars'), ('haskell', 'Haskell'), ('haxe', 'Haxe'), ('hcl', 'HCL'), ('http', 'HTTP'), ('hpkp', 'HTTP Public-Key-Pins'), ('hsts', 'HTTP Strict-Transport-Security'), ('ichigojam', 'IchigoJam'), ('icon', 'Icon'), ('inform7', 'Inform 7'), ('ini', 'Ini'), ('io', 'Io'), ('j', 'J'), ('java', 'Java'), ('javadoc', 'JavaDoc'), ('javadoclike', 'JavaDoc-like'), ('javascript', 'JavaScript'), ('javastacktrace', 'Java stack trace'), ('jolie', 'Jolie'), ('jq', 'JQ'), ('jsdoc', 'JSDoc'), ('js-extras', 'JS Extras'), ('js-templates', 'JS Templates'), ('json', 'JSON'), ('jsonp', 'JSONP'), ('json5', 'JSON5'), ('julia', 'Julia'), ('keyman', 'Keyman'), ('kotlin', 'Kotlin'), ('latex', 'LaTeX'), ('less', 'Less'), ('lilypond', 'Lilypond'), ('liquid', 'Liquid'), ('lisp', 'Lisp'), ('livescript', 'LiveScript'), ('lolcode', 'LOLCODE'), ('lua', 'Lua'), ('makefile', 'Makefile'), ('markdown', 'Markdown'), ('markup', 'Markup + HTML + XML + SVG + MathML'), ('markup-templating', 'Markup templating'), ('matlab', 'MATLAB'), ('mel', 'MEL'), ('mizar', 'Mizar'), ('monkey', 'Monkey'), ('n1ql', 'N1QL'), ('n4js', 'N4JS'), ('nand2tetris-hdl', 'Nand To Tetris HDL'), ('nasm', 'NASM'), ('nginx', 'nginx'), ('nim', 'Nim'), ('nix', 'Nix'), ('nsis', 'NSIS'), ('objectivec', 'Objective-C'), ('ocaml', 'OCaml'), ('opencl', 'OpenCL'), ('oz', 'Oz'), ('parigp', 'PARI/GP'), ('parser', 'Parser'), ('pascal', 'Pascal + Object Pascal'), ('pascaligo', 'Pascaligo'), ('pcaxis', 'PC Axis'), ('perl', 'Perl'), ('php', 'PHP'), ('phpdoc', 'PHPDoc'), ('php-extras', 'PHP Extras'), ('plsql', 'PL/SQL'), ('powershell', 'PowerShell'), ('processing', 'Processing'), ('prolog', 'Prolog'), ('properties', '.properties'), ('protobuf', 'Protocol Buffers'), ('pug', 'Pug'), ('puppet', 'Puppet'), ('pure', 'Pure'), ('python', 'Python'), ('q', 'Q (kdb+ database)'), ('qore', 'Qore'), ('r', 'R'), ('jsx', 'React JSX'), ('tsx', 'React TSX'), ('renpy', "Ren'py"), ('reason', 'Reason'), ('regex', 'Regex'), ('rest', 'reST (reStructuredText)'), ('rip', 'Rip'), ('roboconf', 'Roboconf'), ('robot-framework', 'Robot Framework'), ('ruby', 'Ruby'), ('rust', 'Rust'), ('sas', 'SAS'), ('sass', 'Sass (Sass)'), ('scss', 'Sass (Scss)'), ('scala', 'Scala'), ('scheme', 'Scheme'), ('shell-session', 'Shell Session'), ('smalltalk', 'Smalltalk'), ('smarty', 'Smarty'), ('solidity', 'Solidity (Ethereum)'), ('sparql', 'SPARQL'), ('splunk-spl', 'Splunk SPL'), ('sqf', 'SQF: Status Quo Function (Arma 3)'), ('sql', 'SQL'), ('soy', 'Soy (Closure Template)'), ('stylus', 'Stylus'), ('swift', 'Swift'), ('tap', 'TAP'), ('tcl', 'Tcl'), ('textile', 'Textile'), ('toml', 'TOML'), ('tt2', 'Template Toolkit 2'), ('twig', 'Twig'), ('typescript', 'TypeScript'), ('t4-cs', 'T4 Text Templates (C#)'), ('t4-vb', 'T4 Text Templates (VB)'), ('t4-templating', 'T4 templating'), ('vala', 'Vala'), ('vbnet', 'VB.Net'), ('velocity', 'Velocity'), ('verilog', 'Verilog'), ('vhdl', 'VHDL'), ('vim', 'vim'), ('visual-basic', 'Visual Basic'), ('wasm', 'WebAssembly'), ('wiki', 'Wiki markup'), ('xeora', 'Xeora + XeoraCube'), ('xojo', 'Xojo (REALbasic)'), ('xquery', 'XQuery'), ('yaml', 'YAML'), ('zig', 'Zig')], help_text='Coding language', identifier='language', label='Language')), ('code', wagtail.core.blocks.TextBlock(identifier='code', label='Code'))], icon='snippet'))], blank=True, null=True, verbose_name='Footer content block'),
        ),
        migrations.AlterField(
            model_name='homepage',
            name='body',
            field=wagtail.core.fields.StreamField([('paragraph_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False)), ('body', wagtail.core.blocks.RichTextBlock())])), ('image_block', wagtail.core.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('caption', wagtail.core.blocks.CharBlock(required=False)), ('width', wagtail.core.blocks.CharBlock(required=False)), ('height', wagtail.core.blocks.IntegerBlock(required=False)), ('redirect_url', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a redirect link on clicking the image', null=True, required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('embed_block', wagtail.core.blocks.StructBlock([('embed', wagtail.embeds.blocks.EmbedBlock()), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('heading_block', wagtail.core.blocks.StructBlock([('heading_text', wagtail.core.blocks.CharBlock(form_classname='title', required=True)), ('size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'Select a header size'), ('h1', 'H1'), ('h2', 'H2'), ('h3', 'H3'), ('h4', 'H4')], required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_jumbotron', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.TextBlock()), ('body', wagtail.core.blocks.RichTextBlock()), ('button_text', wagtail.core.blocks.TextBlock(required=False)), ('button_link', wagtail.core.blocks.TextBlock(required=False)), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_alert', wagtail.core.blocks.StructBlock([('alert_text', wagtail.core.blocks.TextBlock()), ('alert_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('alert-primary', 'DEFAULT'), ('alert-secondary', 'GREY'), ('alert-success', 'GREEN'), ('alert-danger', 'RED'), ('alert-warning', 'ORANGE'), ('alert-dark', 'DARK'), ('alert-light', 'LIGHT')], help_text='select a background color', required=False)), ('is_link', wagtail.core.blocks.BooleanBlock(required=False)), ('alert_link', wagtail.core.blocks.TextBlock(required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_button', wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_link', wagtail.core.blocks.TextBlock()), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_card', wagtail.core.blocks.StructBlock([('card_width', wagtail.core.blocks.IntegerBlock(blank=True, help_text='18 works best for card', required=False)), ('is_card_img', wagtail.core.blocks.BooleanBlock(required=False)), ('is_card_img_overlay', wagtail.core.blocks.BooleanBlock(default=False, help_text='Use image as background for card', label='Image Overlay?', required=False)), ('card_img', wagtail.images.blocks.ImageChooserBlock(required=False)), ('card_img_width', wagtail.core.blocks.IntegerBlock(help_text='provide an image width', required=False)), ('card_img_height', wagtail.core.blocks.IntegerBlock(help_text='provide an image height', required=False)), ('card_title', wagtail.core.blocks.TextBlock(blank=True, null=True, required=False)), ('card_text', wagtail.core.blocks.RichTextBlock(blank=True, null=True, required=False)), ('card_bg_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('bg-primary', 'DEFAULT'), ('bg-secondary', 'GREY'), ('bg-success', 'GREEN'), ('bg-danger', 'RED'), ('bg-warning', 'ORANGE'), ('bg-dark', 'DARK'), ('bg-light', 'LIGHT')], help_text='select a background color', required=False)), ('card_text_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('text-primary', 'DEFAULT'), ('text-secondary', 'GREY'), ('text-success', 'GREEN'), ('text-danger', 'RED'), ('text-warning', 'ORANGE'), ('text-dark', 'DARK'), ('text-light', 'LIGHT')], help_text='select a text color', required=False)), ('buttons', wagtail.core.blocks.ListBlock(wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_link', wagtail.core.blocks.TextBlock()), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))], required=False), default=[])), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_carousel', wagtail.core.blocks.StructBlock([('interval', wagtail.core.blocks.IntegerBlock(default=2000, help_text='\n    The amount of time to delay between automatically cycling an item. If\n    false, carousel will not automatically cycle.\n    ')), ('c_image1', wagtail.images.blocks.ImageChooserBlock(required=True)), ('c_image1_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 1', required=False)), ('c_image1_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 1', required=False)), ('c_image2', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image2_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 2', required=False)), ('c_image2_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 2', required=False)), ('c_image3', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image3_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 3', required=False)), ('c_image3_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 3', required=False)), ('c_image4', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image4_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 4', required=False)), ('c_image4_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 4', required=False)), ('c_image5', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image5_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 5', required=False)), ('c_image5_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 5', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_well', wagtail.core.blocks.StructBlock([('message', wagtail.core.blocks.RichTextBlock(help_text='Enter some message inside well')), ('well_bg_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('bg-primary', 'DEFAULT'), ('bg-secondary', 'GREY'), ('bg-success', 'GREEN'), ('bg-danger', 'RED'), ('bg-warning', 'ORANGE'), ('bg-dark', 'DARK'), ('bg-light', 'LIGHT')], help_text='select a background color', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('horizontal_rule', wagtail.core.blocks.StructBlock([('thickness', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter a thickness integer value. Eg(10)', required=False)), ('bg_color', wagtail.core.blocks.TextBlock(help_text='Enter a hexcode color for the rule Eg(#000000)', required=True)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_media_object', wagtail.core.blocks.StructBlock([('media_img', wagtail.images.blocks.ImageChooserBlock(required=True)), ('media_img_alt', wagtail.core.blocks.TextBlock(required=True)), ('media_img_width', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter an image width as an integer value. Eg(50)', required=False)), ('media_img_height', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter an image height as an integer value Eg(50)', required=False)), ('heading_text', wagtail.core.blocks.TextBlock(blank=True, help_text='enter some heading text for media object', required=False)), ('body_text', wagtail.core.blocks.RichTextBlock(help_text='Enter some message for the media object', required=True)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('placeholder_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('font_awesome_icon_block', wagtail.core.blocks.StructBlock([('icon_tag', wagtail.core.blocks.TextBlock(blank=False, help_text='Provide a font awesome icon class text', required=True)), ('icon_size', wagtail.core.blocks.IntegerBlock(blank=True, default=2, help_text='Provide a icon size in number type', null=True, required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('iu_footer_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False)), ('footer_links', wagtail.core.blocks.RichTextBlock())])), ('bootstrap_embed_video', wagtail.core.blocks.StructBlock([('video', wagtail.documents.blocks.DocumentChooserBlock(required=True)), ('aspect_ratio', wagtail.core.blocks.ChoiceBlock(choices=[('21by9', '21 x 9'), ('16by9', '16 x 9'), ('4by3', '4 x 3'), ('1by1', '1 x 1')], help_text='Aspect ratio')), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('expandable_rich_text_block', wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_id', wagtail.core.blocks.TextBlock(help_text='Unique name for this collapsible')), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('button_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control the look of this button by giving unique class names separated by space and styling the class in css', required=False)), ('body_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control the look of this body by giving unique class names separated by space and styling the class in css', required=False)), ('body_inline_style', wagtail.core.blocks.TextBlock(blank=True, help_text='apply inline CSS styles to body', required=False)), ('body', wagtail.core.blocks.RichTextBlock())])), ('HTML_code', wagtail.core.blocks.RawHTMLBlock()), ('code_snippet', wagtail.core.blocks.StructBlock([('language', wagtail.core.blocks.ChoiceBlock(choices=[('abap', 'ABAP'), ('abnf', 'Augmented Backus–Naur form'), ('actionscript', 'ActionScript'), ('ada', 'Ada'), ('antlr4', 'ANTLR4'), ('apacheconf', 'Apache Configuration'), ('apl', 'APL'), ('applescript', 'AppleScript'), ('aql', 'AQL'), ('arduino', 'Arduino'), ('arff', 'ARFF'), ('asciidoc', 'AsciiDoc'), ('asm6502', '6502 Assembly'), ('aspnet', 'ASP.NET (C#)'), ('autohotkey', 'AutoHotkey'), ('autoit', 'AutoIt'), ('bash', 'Bash + Shell'), ('basic', 'BASIC'), ('batch', 'Batch'), ('bison', 'Bison'), ('bnf', 'Backus–Naur form + Routing Backus–Naur form'), ('brainfuck', 'Brainfuck'), ('bro', 'Bro'), ('c', 'C'), ('clike', 'C-like'), ('cmake', 'CMake'), ('csharp', 'C#'), ('cpp', 'C++'), ('cil', 'CIL'), ('coffeescript', 'CoffeeScript'), ('clojure', 'Clojure'), ('crystal', 'Crystal'), ('csp', 'Content-Security-Policy'), ('css', 'CSS'), ('css-extras', 'CSS Extras'), ('d', 'D'), ('dart', 'Dart'), ('diff', 'Diff'), ('django', 'Django/Jinja2'), ('dns-zone-file', 'DNS Zone File'), ('docker', 'Docker'), ('ebnf', 'Extended Backus–Naur form'), ('eiffel', 'Eiffel'), ('ejs', 'EJS'), ('elixir', 'Elixir'), ('elm', 'Elm'), ('erb', 'ERB'), ('erlang', 'Erlang'), ('etlua', 'Embedded LUA Templating'), ('fsharp', 'F#'), ('flow', 'Flow'), ('fortran', 'Fortran'), ('ftl', 'Freemarker Template Language'), ('gcode', 'G-code'), ('gdscript', 'GDScript'), ('gedcom', 'GEDCOM'), ('gherkin', 'Gherkin'), ('git', 'Git'), ('glsl', 'GLSL'), ('gml', 'GameMaker Language'), ('go', 'Go'), ('graphql', 'GraphQL'), ('groovy', 'Groovy'), ('haml', 'Haml'), ('handlebars', 'Handlebars'), ('haskell', 'Haskell'), ('haxe', 'Haxe'), ('hcl', 'HCL'), ('http', 'HTTP'), ('hpkp', 'HTTP Public-Key-Pins'), ('hsts', 'HTTP Strict-Transport-Security'), ('ichigojam', 'IchigoJam'), ('icon', 'Icon'), ('inform7', 'Inform 7'), ('ini', 'Ini'), ('io', 'Io'), ('j', 'J'), ('java', 'Java'), ('javadoc', 'JavaDoc'), ('javadoclike', 'JavaDoc-like'), ('javascript', 'JavaScript'), ('javastacktrace', 'Java stack trace'), ('jolie', 'Jolie'), ('jq', 'JQ'), ('jsdoc', 'JSDoc'), ('js-extras', 'JS Extras'), ('js-templates', 'JS Templates'), ('json', 'JSON'), ('jsonp', 'JSONP'), ('json5', 'JSON5'), ('julia', 'Julia'), ('keyman', 'Keyman'), ('kotlin', 'Kotlin'), ('latex', 'LaTeX'), ('less', 'Less'), ('lilypond', 'Lilypond'), ('liquid', 'Liquid'), ('lisp', 'Lisp'), ('livescript', 'LiveScript'), ('lolcode', 'LOLCODE'), ('lua', 'Lua'), ('makefile', 'Makefile'), ('markdown', 'Markdown'), ('markup', 'Markup + HTML + XML + SVG + MathML'), ('markup-templating', 'Markup templating'), ('matlab', 'MATLAB'), ('mel', 'MEL'), ('mizar', 'Mizar'), ('monkey', 'Monkey'), ('n1ql', 'N1QL'), ('n4js', 'N4JS'), ('nand2tetris-hdl', 'Nand To Tetris HDL'), ('nasm', 'NASM'), ('nginx', 'nginx'), ('nim', 'Nim'), ('nix', 'Nix'), ('nsis', 'NSIS'), ('objectivec', 'Objective-C'), ('ocaml', 'OCaml'), ('opencl', 'OpenCL'), ('oz', 'Oz'), ('parigp', 'PARI/GP'), ('parser', 'Parser'), ('pascal', 'Pascal + Object Pascal'), ('pascaligo', 'Pascaligo'), ('pcaxis', 'PC Axis'), ('perl', 'Perl'), ('php', 'PHP'), ('phpdoc', 'PHPDoc'), ('php-extras', 'PHP Extras'), ('plsql', 'PL/SQL'), ('powershell', 'PowerShell'), ('processing', 'Processing'), ('prolog', 'Prolog'), ('properties', '.properties'), ('protobuf', 'Protocol Buffers'), ('pug', 'Pug'), ('puppet', 'Puppet'), ('pure', 'Pure'), ('python', 'Python'), ('q', 'Q (kdb+ database)'), ('qore', 'Qore'), ('r', 'R'), ('jsx', 'React JSX'), ('tsx', 'React TSX'), ('renpy', "Ren'py"), ('reason', 'Reason'), ('regex', 'Regex'), ('rest', 'reST (reStructuredText)'), ('rip', 'Rip'), ('roboconf', 'Roboconf'), ('robot-framework', 'Robot Framework'), ('ruby', 'Ruby'), ('rust', 'Rust'), ('sas', 'SAS'), ('sass', 'Sass (Sass)'), ('scss', 'Sass (Scss)'), ('scala', 'Scala'), ('scheme', 'Scheme'), ('shell-session', 'Shell Session'), ('smalltalk', 'Smalltalk'), ('smarty', 'Smarty'), ('solidity', 'Solidity (Ethereum)'), ('sparql', 'SPARQL'), ('splunk-spl', 'Splunk SPL'), ('sqf', 'SQF: Status Quo Function (Arma 3)'), ('sql', 'SQL'), ('soy', 'Soy (Closure Template)'), ('stylus', 'Stylus'), ('swift', 'Swift'), ('tap', 'TAP'), ('tcl', 'Tcl'), ('textile', 'Textile'), ('toml', 'TOML'), ('tt2', 'Template Toolkit 2'), ('twig', 'Twig'), ('typescript', 'TypeScript'), ('t4-cs', 'T4 Text Templates (C#)'), ('t4-vb', 'T4 Text Templates (VB)'), ('t4-templating', 'T4 templating'), ('vala', 'Vala'), ('vbnet', 'VB.Net'), ('velocity', 'Velocity'), ('verilog', 'Verilog'), ('vhdl', 'VHDL'), ('vim', 'vim'), ('visual-basic', 'Visual Basic'), ('wasm', 'WebAssembly'), ('wiki', 'Wiki markup'), ('xeora', 'Xeora + XeoraCube'), ('xojo', 'Xojo (REALbasic)'), ('xquery', 'XQuery'), ('yaml', 'YAML'), ('zig', 'Zig')], help_text='Coding language', identifier='language', label='Language')), ('code', wagtail.core.blocks.TextBlock(identifier='code', label='Code'))], icon='snippet'))], blank=True, null=True, verbose_name='Home content block'),
        ),
        migrations.AlterField(
            model_name='rowblankpagerelation',
            name='body',
            field=wagtail.core.fields.StreamField([('paragraph_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False)), ('body', wagtail.core.blocks.RichTextBlock())])), ('image_block', wagtail.core.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('caption', wagtail.core.blocks.CharBlock(required=False)), ('width', wagtail.core.blocks.CharBlock(required=False)), ('height', wagtail.core.blocks.IntegerBlock(required=False)), ('redirect_url', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a redirect link on clicking the image', null=True, required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('embed_block', wagtail.core.blocks.StructBlock([('embed', wagtail.embeds.blocks.EmbedBlock()), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('heading_block', wagtail.core.blocks.StructBlock([('heading_text', wagtail.core.blocks.CharBlock(form_classname='title', required=True)), ('size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'Select a header size'), ('h1', 'H1'), ('h2', 'H2'), ('h3', 'H3'), ('h4', 'H4')], required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_jumbotron', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.TextBlock()), ('body', wagtail.core.blocks.RichTextBlock()), ('button_text', wagtail.core.blocks.TextBlock(required=False)), ('button_link', wagtail.core.blocks.TextBlock(required=False)), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_alert', wagtail.core.blocks.StructBlock([('alert_text', wagtail.core.blocks.TextBlock()), ('alert_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('alert-primary', 'DEFAULT'), ('alert-secondary', 'GREY'), ('alert-success', 'GREEN'), ('alert-danger', 'RED'), ('alert-warning', 'ORANGE'), ('alert-dark', 'DARK'), ('alert-light', 'LIGHT')], help_text='select a background color', required=False)), ('is_link', wagtail.core.blocks.BooleanBlock(required=False)), ('alert_link', wagtail.core.blocks.TextBlock(required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_button', wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_link', wagtail.core.blocks.TextBlock()), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_card', wagtail.core.blocks.StructBlock([('card_width', wagtail.core.blocks.IntegerBlock(blank=True, help_text='18 works best for card', required=False)), ('is_card_img', wagtail.core.blocks.BooleanBlock(required=False)), ('is_card_img_overlay', wagtail.core.blocks.BooleanBlock(default=False, help_text='Use image as background for card', label='Image Overlay?', required=False)), ('card_img', wagtail.images.blocks.ImageChooserBlock(required=False)), ('card_img_width', wagtail.core.blocks.IntegerBlock(help_text='provide an image width', required=False)), ('card_img_height', wagtail.core.blocks.IntegerBlock(help_text='provide an image height', required=False)), ('card_title', wagtail.core.blocks.TextBlock(blank=True, null=True, required=False)), ('card_text', wagtail.core.blocks.RichTextBlock(blank=True, null=True, required=False)), ('card_bg_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('bg-primary', 'DEFAULT'), ('bg-secondary', 'GREY'), ('bg-success', 'GREEN'), ('bg-danger', 'RED'), ('bg-warning', 'ORANGE'), ('bg-dark', 'DARK'), ('bg-light', 'LIGHT')], help_text='select a background color', required=False)), ('card_text_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('text-primary', 'DEFAULT'), ('text-secondary', 'GREY'), ('text-success', 'GREEN'), ('text-danger', 'RED'), ('text-warning', 'ORANGE'), ('text-dark', 'DARK'), ('text-light', 'LIGHT')], help_text='select a text color', required=False)), ('buttons', wagtail.core.blocks.ListBlock(wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_link', wagtail.core.blocks.TextBlock()), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))], required=False), default=[])), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_carousel', wagtail.core.blocks.StructBlock([('interval', wagtail.core.blocks.IntegerBlock(default=2000, help_text='\n    The amount of time to delay between automatically cycling an item. If\n    false, carousel will not automatically cycle.\n    ')), ('c_image1', wagtail.images.blocks.ImageChooserBlock(required=True)), ('c_image1_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 1', required=False)), ('c_image1_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 1', required=False)), ('c_image2', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image2_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 2', required=False)), ('c_image2_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 2', required=False)), ('c_image3', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image3_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 3', required=False)), ('c_image3_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 3', required=False)), ('c_image4', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image4_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 4', required=False)), ('c_image4_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 4', required=False)), ('c_image5', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image5_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 5', required=False)), ('c_image5_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 5', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_well', wagtail.core.blocks.StructBlock([('message', wagtail.core.blocks.RichTextBlock(help_text='Enter some message inside well')), ('well_bg_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('bg-primary', 'DEFAULT'), ('bg-secondary', 'GREY'), ('bg-success', 'GREEN'), ('bg-danger', 'RED'), ('bg-warning', 'ORANGE'), ('bg-dark', 'DARK'), ('bg-light', 'LIGHT')], help_text='select a background color', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('horizontal_rule', wagtail.core.blocks.StructBlock([('thickness', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter a thickness integer value. Eg(10)', required=False)), ('bg_color', wagtail.core.blocks.TextBlock(help_text='Enter a hexcode color for the rule Eg(#000000)', required=True)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_media_object', wagtail.core.blocks.StructBlock([('media_img', wagtail.images.blocks.ImageChooserBlock(required=True)), ('media_img_alt', wagtail.core.blocks.TextBlock(required=True)), ('media_img_width', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter an image width as an integer value. Eg(50)', required=False)), ('media_img_height', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter an image height as an integer value Eg(50)', required=False)), ('heading_text', wagtail.core.blocks.TextBlock(blank=True, help_text='enter some heading text for media object', required=False)), ('body_text', wagtail.core.blocks.RichTextBlock(help_text='Enter some message for the media object', required=True)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('placeholder_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('font_awesome_icon_block', wagtail.core.blocks.StructBlock([('icon_tag', wagtail.core.blocks.TextBlock(blank=False, help_text='Provide a font awesome icon class text', required=True)), ('icon_size', wagtail.core.blocks.IntegerBlock(blank=True, default=2, help_text='Provide a icon size in number type', null=True, required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('iu_footer_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False)), ('footer_links', wagtail.core.blocks.RichTextBlock())])), ('bootstrap_embed_video', wagtail.core.blocks.StructBlock([('video', wagtail.documents.blocks.DocumentChooserBlock(required=True)), ('aspect_ratio', wagtail.core.blocks.ChoiceBlock(choices=[('21by9', '21 x 9'), ('16by9', '16 x 9'), ('4by3', '4 x 3'), ('1by1', '1 x 1')], help_text='Aspect ratio')), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('expandable_rich_text_block', wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_id', wagtail.core.blocks.TextBlock(help_text='Unique name for this collapsible')), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('button_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control the look of this button by giving unique class names separated by space and styling the class in css', required=False)), ('body_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control the look of this body by giving unique class names separated by space and styling the class in css', required=False)), ('body_inline_style', wagtail.core.blocks.TextBlock(blank=True, help_text='apply inline CSS styles to body', required=False)), ('body', wagtail.core.blocks.RichTextBlock())])), ('HTML_code', wagtail.core.blocks.RawHTMLBlock()), ('code_snippet', wagtail.core.blocks.StructBlock([('language', wagtail.core.blocks.ChoiceBlock(choices=[('abap', 'ABAP'), ('abnf', 'Augmented Backus–Naur form'), ('actionscript', 'ActionScript'), ('ada', 'Ada'), ('antlr4', 'ANTLR4'), ('apacheconf', 'Apache Configuration'), ('apl', 'APL'), ('applescript', 'AppleScript'), ('aql', 'AQL'), ('arduino', 'Arduino'), ('arff', 'ARFF'), ('asciidoc', 'AsciiDoc'), ('asm6502', '6502 Assembly'), ('aspnet', 'ASP.NET (C#)'), ('autohotkey', 'AutoHotkey'), ('autoit', 'AutoIt'), ('bash', 'Bash + Shell'), ('basic', 'BASIC'), ('batch', 'Batch'), ('bison', 'Bison'), ('bnf', 'Backus–Naur form + Routing Backus–Naur form'), ('brainfuck', 'Brainfuck'), ('bro', 'Bro'), ('c', 'C'), ('clike', 'C-like'), ('cmake', 'CMake'), ('csharp', 'C#'), ('cpp', 'C++'), ('cil', 'CIL'), ('coffeescript', 'CoffeeScript'), ('clojure', 'Clojure'), ('crystal', 'Crystal'), ('csp', 'Content-Security-Policy'), ('css', 'CSS'), ('css-extras', 'CSS Extras'), ('d', 'D'), ('dart', 'Dart'), ('diff', 'Diff'), ('django', 'Django/Jinja2'), ('dns-zone-file', 'DNS Zone File'), ('docker', 'Docker'), ('ebnf', 'Extended Backus–Naur form'), ('eiffel', 'Eiffel'), ('ejs', 'EJS'), ('elixir', 'Elixir'), ('elm', 'Elm'), ('erb', 'ERB'), ('erlang', 'Erlang'), ('etlua', 'Embedded LUA Templating'), ('fsharp', 'F#'), ('flow', 'Flow'), ('fortran', 'Fortran'), ('ftl', 'Freemarker Template Language'), ('gcode', 'G-code'), ('gdscript', 'GDScript'), ('gedcom', 'GEDCOM'), ('gherkin', 'Gherkin'), ('git', 'Git'), ('glsl', 'GLSL'), ('gml', 'GameMaker Language'), ('go', 'Go'), ('graphql', 'GraphQL'), ('groovy', 'Groovy'), ('haml', 'Haml'), ('handlebars', 'Handlebars'), ('haskell', 'Haskell'), ('haxe', 'Haxe'), ('hcl', 'HCL'), ('http', 'HTTP'), ('hpkp', 'HTTP Public-Key-Pins'), ('hsts', 'HTTP Strict-Transport-Security'), ('ichigojam', 'IchigoJam'), ('icon', 'Icon'), ('inform7', 'Inform 7'), ('ini', 'Ini'), ('io', 'Io'), ('j', 'J'), ('java', 'Java'), ('javadoc', 'JavaDoc'), ('javadoclike', 'JavaDoc-like'), ('javascript', 'JavaScript'), ('javastacktrace', 'Java stack trace'), ('jolie', 'Jolie'), ('jq', 'JQ'), ('jsdoc', 'JSDoc'), ('js-extras', 'JS Extras'), ('js-templates', 'JS Templates'), ('json', 'JSON'), ('jsonp', 'JSONP'), ('json5', 'JSON5'), ('julia', 'Julia'), ('keyman', 'Keyman'), ('kotlin', 'Kotlin'), ('latex', 'LaTeX'), ('less', 'Less'), ('lilypond', 'Lilypond'), ('liquid', 'Liquid'), ('lisp', 'Lisp'), ('livescript', 'LiveScript'), ('lolcode', 'LOLCODE'), ('lua', 'Lua'), ('makefile', 'Makefile'), ('markdown', 'Markdown'), ('markup', 'Markup + HTML + XML + SVG + MathML'), ('markup-templating', 'Markup templating'), ('matlab', 'MATLAB'), ('mel', 'MEL'), ('mizar', 'Mizar'), ('monkey', 'Monkey'), ('n1ql', 'N1QL'), ('n4js', 'N4JS'), ('nand2tetris-hdl', 'Nand To Tetris HDL'), ('nasm', 'NASM'), ('nginx', 'nginx'), ('nim', 'Nim'), ('nix', 'Nix'), ('nsis', 'NSIS'), ('objectivec', 'Objective-C'), ('ocaml', 'OCaml'), ('opencl', 'OpenCL'), ('oz', 'Oz'), ('parigp', 'PARI/GP'), ('parser', 'Parser'), ('pascal', 'Pascal + Object Pascal'), ('pascaligo', 'Pascaligo'), ('pcaxis', 'PC Axis'), ('perl', 'Perl'), ('php', 'PHP'), ('phpdoc', 'PHPDoc'), ('php-extras', 'PHP Extras'), ('plsql', 'PL/SQL'), ('powershell', 'PowerShell'), ('processing', 'Processing'), ('prolog', 'Prolog'), ('properties', '.properties'), ('protobuf', 'Protocol Buffers'), ('pug', 'Pug'), ('puppet', 'Puppet'), ('pure', 'Pure'), ('python', 'Python'), ('q', 'Q (kdb+ database)'), ('qore', 'Qore'), ('r', 'R'), ('jsx', 'React JSX'), ('tsx', 'React TSX'), ('renpy', "Ren'py"), ('reason', 'Reason'), ('regex', 'Regex'), ('rest', 'reST (reStructuredText)'), ('rip', 'Rip'), ('roboconf', 'Roboconf'), ('robot-framework', 'Robot Framework'), ('ruby', 'Ruby'), ('rust', 'Rust'), ('sas', 'SAS'), ('sass', 'Sass (Sass)'), ('scss', 'Sass (Scss)'), ('scala', 'Scala'), ('scheme', 'Scheme'), ('shell-session', 'Shell Session'), ('smalltalk', 'Smalltalk'), ('smarty', 'Smarty'), ('solidity', 'Solidity (Ethereum)'), ('sparql', 'SPARQL'), ('splunk-spl', 'Splunk SPL'), ('sqf', 'SQF: Status Quo Function (Arma 3)'), ('sql', 'SQL'), ('soy', 'Soy (Closure Template)'), ('stylus', 'Stylus'), ('swift', 'Swift'), ('tap', 'TAP'), ('tcl', 'Tcl'), ('textile', 'Textile'), ('toml', 'TOML'), ('tt2', 'Template Toolkit 2'), ('twig', 'Twig'), ('typescript', 'TypeScript'), ('t4-cs', 'T4 Text Templates (C#)'), ('t4-vb', 'T4 Text Templates (VB)'), ('t4-templating', 'T4 templating'), ('vala', 'Vala'), ('vbnet', 'VB.Net'), ('velocity', 'Velocity'), ('verilog', 'Verilog'), ('vhdl', 'VHDL'), ('vim', 'vim'), ('visual-basic', 'Visual Basic'), ('wasm', 'WebAssembly'), ('wiki', 'Wiki markup'), ('xeora', 'Xeora + XeoraCube'), ('xojo', 'Xojo (REALbasic)'), ('xquery', 'XQuery'), ('yaml', 'YAML'), ('zig', 'Zig')], help_text='Coding language', identifier='language', label='Language')), ('code', wagtail.core.blocks.TextBlock(identifier='code', label='Code'))], icon='snippet'))], blank=True, null=True, verbose_name='Row Content'),
        ),
        migrations.AlterField(
            model_name='rowcybergatewayhomepagerelation',
            name='body',
            field=wagtail.core.fields.StreamField([('paragraph_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False)), ('body', wagtail.core.blocks.RichTextBlock())])), ('image_block', wagtail.core.blocks.StructBlock([('image', wagtail.images.blocks.ImageChooserBlock(required=True)), ('caption', wagtail.core.blocks.CharBlock(required=False)), ('width', wagtail.core.blocks.CharBlock(required=False)), ('height', wagtail.core.blocks.IntegerBlock(required=False)), ('redirect_url', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a redirect link on clicking the image', null=True, required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('embed_block', wagtail.core.blocks.StructBlock([('embed', wagtail.embeds.blocks.EmbedBlock()), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('heading_block', wagtail.core.blocks.StructBlock([('heading_text', wagtail.core.blocks.CharBlock(form_classname='title', required=True)), ('size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'Select a header size'), ('h1', 'H1'), ('h2', 'H2'), ('h3', 'H3'), ('h4', 'H4')], required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_jumbotron', wagtail.core.blocks.StructBlock([('title', wagtail.core.blocks.TextBlock()), ('body', wagtail.core.blocks.RichTextBlock()), ('button_text', wagtail.core.blocks.TextBlock(required=False)), ('button_link', wagtail.core.blocks.TextBlock(required=False)), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_alert', wagtail.core.blocks.StructBlock([('alert_text', wagtail.core.blocks.TextBlock()), ('alert_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('alert-primary', 'DEFAULT'), ('alert-secondary', 'GREY'), ('alert-success', 'GREEN'), ('alert-danger', 'RED'), ('alert-warning', 'ORANGE'), ('alert-dark', 'DARK'), ('alert-light', 'LIGHT')], help_text='select a background color', required=False)), ('is_link', wagtail.core.blocks.BooleanBlock(required=False)), ('alert_link', wagtail.core.blocks.TextBlock(required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_button', wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_link', wagtail.core.blocks.TextBlock()), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_card', wagtail.core.blocks.StructBlock([('card_width', wagtail.core.blocks.IntegerBlock(blank=True, help_text='18 works best for card', required=False)), ('is_card_img', wagtail.core.blocks.BooleanBlock(required=False)), ('is_card_img_overlay', wagtail.core.blocks.BooleanBlock(default=False, help_text='Use image as background for card', label='Image Overlay?', required=False)), ('card_img', wagtail.images.blocks.ImageChooserBlock(required=False)), ('card_img_width', wagtail.core.blocks.IntegerBlock(help_text='provide an image width', required=False)), ('card_img_height', wagtail.core.blocks.IntegerBlock(help_text='provide an image height', required=False)), ('card_title', wagtail.core.blocks.TextBlock(blank=True, null=True, required=False)), ('card_text', wagtail.core.blocks.RichTextBlock(blank=True, null=True, required=False)), ('card_bg_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('bg-primary', 'DEFAULT'), ('bg-secondary', 'GREY'), ('bg-success', 'GREEN'), ('bg-danger', 'RED'), ('bg-warning', 'ORANGE'), ('bg-dark', 'DARK'), ('bg-light', 'LIGHT')], help_text='select a background color', required=False)), ('card_text_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('text-primary', 'DEFAULT'), ('text-secondary', 'GREY'), ('text-success', 'GREEN'), ('text-danger', 'RED'), ('text-warning', 'ORANGE'), ('text-dark', 'DARK'), ('text-light', 'LIGHT')], help_text='select a text color', required=False)), ('buttons', wagtail.core.blocks.ListBlock(wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_link', wagtail.core.blocks.TextBlock()), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))], required=False), default=[])), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_carousel', wagtail.core.blocks.StructBlock([('interval', wagtail.core.blocks.IntegerBlock(default=2000, help_text='\n    The amount of time to delay between automatically cycling an item. If\n    false, carousel will not automatically cycle.\n    ')), ('c_image1', wagtail.images.blocks.ImageChooserBlock(required=True)), ('c_image1_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 1', required=False)), ('c_image1_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 1', required=False)), ('c_image2', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image2_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 2', required=False)), ('c_image2_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 2', required=False)), ('c_image3', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image3_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 3', required=False)), ('c_image3_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 3', required=False)), ('c_image4', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image4_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 4', required=False)), ('c_image4_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 4', required=False)), ('c_image5', wagtail.images.blocks.ImageChooserBlock(required=False)), ('c_image5_title', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a title for image 5', required=False)), ('c_image5_body', wagtail.core.blocks.TextBlock(blank=True, help_text='Give a body for image 5', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_well', wagtail.core.blocks.StructBlock([('message', wagtail.core.blocks.RichTextBlock(help_text='Enter some message inside well')), ('well_bg_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('bg-primary', 'DEFAULT'), ('bg-secondary', 'GREY'), ('bg-success', 'GREEN'), ('bg-danger', 'RED'), ('bg-warning', 'ORANGE'), ('bg-dark', 'DARK'), ('bg-light', 'LIGHT')], help_text='select a background color', required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('horizontal_rule', wagtail.core.blocks.StructBlock([('thickness', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter a thickness integer value. Eg(10)', required=False)), ('bg_color', wagtail.core.blocks.TextBlock(help_text='Enter a hexcode color for the rule Eg(#000000)', required=True)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('bootstrap_media_object', wagtail.core.blocks.StructBlock([('media_img', wagtail.images.blocks.ImageChooserBlock(required=True)), ('media_img_alt', wagtail.core.blocks.TextBlock(required=True)), ('media_img_width', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter an image width as an integer value. Eg(50)', required=False)), ('media_img_height', wagtail.core.blocks.IntegerBlock(blank=True, help_text='Enter an image height as an integer value Eg(50)', required=False)), ('heading_text', wagtail.core.blocks.TextBlock(blank=True, help_text='enter some heading text for media object', required=False)), ('body_text', wagtail.core.blocks.RichTextBlock(help_text='Enter some message for the media object', required=True)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('placeholder_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('font_awesome_icon_block', wagtail.core.blocks.StructBlock([('icon_tag', wagtail.core.blocks.TextBlock(blank=False, help_text='Provide a font awesome icon class text', required=True)), ('icon_size', wagtail.core.blocks.IntegerBlock(blank=True, default=2, help_text='Provide a icon size in number type', null=True, required=False)), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('iu_footer_block', wagtail.core.blocks.StructBlock([('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False)), ('footer_links', wagtail.core.blocks.RichTextBlock())])), ('bootstrap_embed_video', wagtail.core.blocks.StructBlock([('video', wagtail.documents.blocks.DocumentChooserBlock(required=True)), ('aspect_ratio', wagtail.core.blocks.ChoiceBlock(choices=[('21by9', '21 x 9'), ('16by9', '16 x 9'), ('4by3', '4 x 3'), ('1by1', '1 x 1')], help_text='Aspect ratio')), ('custom_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control this element by giving unique class names separated by space and styling the class in css', required=False))])), ('expandable_rich_text_block', wagtail.core.blocks.StructBlock([('button_text', wagtail.core.blocks.TextBlock()), ('button_id', wagtail.core.blocks.TextBlock(help_text='Unique name for this collapsible')), ('button_color', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('btn-primary', 'DEFAULT'), ('btn-danger', 'RED'), ('btn-secondary', 'GREY'), ('btn-success', 'GREEN'), ('btn-warning', 'ORANGE')], help_text='select a button color', required=False)), ('button_size', wagtail.core.blocks.ChoiceBlock(blank=True, choices=[('', 'DEFAULT'), ('btn-lg', 'LARGE'), ('btn-sm', 'SMALL')], help_text='select a button size', required=False)), ('button_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control the look of this button by giving unique class names separated by space and styling the class in css', required=False)), ('body_class', wagtail.core.blocks.TextBlock(blank=True, help_text='control the look of this body by giving unique class names separated by space and styling the class in css', required=False)), ('body_inline_style', wagtail.core.blocks.TextBlock(blank=True, help_text='apply inline CSS styles to body', required=False)), ('body', wagtail.core.blocks.RichTextBlock())])), ('HTML_code', wagtail.core.blocks.RawHTMLBlock()), ('code_snippet', wagtail.core.blocks.StructBlock([('language', wagtail.core.blocks.ChoiceBlock(choices=[('abap', 'ABAP'), ('abnf', 'Augmented Backus–Naur form'), ('actionscript', 'ActionScript'), ('ada', 'Ada'), ('antlr4', 'ANTLR4'), ('apacheconf', 'Apache Configuration'), ('apl', 'APL'), ('applescript', 'AppleScript'), ('aql', 'AQL'), ('arduino', 'Arduino'), ('arff', 'ARFF'), ('asciidoc', 'AsciiDoc'), ('asm6502', '6502 Assembly'), ('aspnet', 'ASP.NET (C#)'), ('autohotkey', 'AutoHotkey'), ('autoit', 'AutoIt'), ('bash', 'Bash + Shell'), ('basic', 'BASIC'), ('batch', 'Batch'), ('bison', 'Bison'), ('bnf', 'Backus–Naur form + Routing Backus–Naur form'), ('brainfuck', 'Brainfuck'), ('bro', 'Bro'), ('c', 'C'), ('clike', 'C-like'), ('cmake', 'CMake'), ('csharp', 'C#'), ('cpp', 'C++'), ('cil', 'CIL'), ('coffeescript', 'CoffeeScript'), ('clojure', 'Clojure'), ('crystal', 'Crystal'), ('csp', 'Content-Security-Policy'), ('css', 'CSS'), ('css-extras', 'CSS Extras'), ('d', 'D'), ('dart', 'Dart'), ('diff', 'Diff'), ('django', 'Django/Jinja2'), ('dns-zone-file', 'DNS Zone File'), ('docker', 'Docker'), ('ebnf', 'Extended Backus–Naur form'), ('eiffel', 'Eiffel'), ('ejs', 'EJS'), ('elixir', 'Elixir'), ('elm', 'Elm'), ('erb', 'ERB'), ('erlang', 'Erlang'), ('etlua', 'Embedded LUA Templating'), ('fsharp', 'F#'), ('flow', 'Flow'), ('fortran', 'Fortran'), ('ftl', 'Freemarker Template Language'), ('gcode', 'G-code'), ('gdscript', 'GDScript'), ('gedcom', 'GEDCOM'), ('gherkin', 'Gherkin'), ('git', 'Git'), ('glsl', 'GLSL'), ('gml', 'GameMaker Language'), ('go', 'Go'), ('graphql', 'GraphQL'), ('groovy', 'Groovy'), ('haml', 'Haml'), ('handlebars', 'Handlebars'), ('haskell', 'Haskell'), ('haxe', 'Haxe'), ('hcl', 'HCL'), ('http', 'HTTP'), ('hpkp', 'HTTP Public-Key-Pins'), ('hsts', 'HTTP Strict-Transport-Security'), ('ichigojam', 'IchigoJam'), ('icon', 'Icon'), ('inform7', 'Inform 7'), ('ini', 'Ini'), ('io', 'Io'), ('j', 'J'), ('java', 'Java'), ('javadoc', 'JavaDoc'), ('javadoclike', 'JavaDoc-like'), ('javascript', 'JavaScript'), ('javastacktrace', 'Java stack trace'), ('jolie', 'Jolie'), ('jq', 'JQ'), ('jsdoc', 'JSDoc'), ('js-extras', 'JS Extras'), ('js-templates', 'JS Templates'), ('json', 'JSON'), ('jsonp', 'JSONP'), ('json5', 'JSON5'), ('julia', 'Julia'), ('keyman', 'Keyman'), ('kotlin', 'Kotlin'), ('latex', 'LaTeX'), ('less', 'Less'), ('lilypond', 'Lilypond'), ('liquid', 'Liquid'), ('lisp', 'Lisp'), ('livescript', 'LiveScript'), ('lolcode', 'LOLCODE'), ('lua', 'Lua'), ('makefile', 'Makefile'), ('markdown', 'Markdown'), ('markup', 'Markup + HTML + XML + SVG + MathML'), ('markup-templating', 'Markup templating'), ('matlab', 'MATLAB'), ('mel', 'MEL'), ('mizar', 'Mizar'), ('monkey', 'Monkey'), ('n1ql', 'N1QL'), ('n4js', 'N4JS'), ('nand2tetris-hdl', 'Nand To Tetris HDL'), ('nasm', 'NASM'), ('nginx', 'nginx'), ('nim', 'Nim'), ('nix', 'Nix'), ('nsis', 'NSIS'), ('objectivec', 'Objective-C'), ('ocaml', 'OCaml'), ('opencl', 'OpenCL'), ('oz', 'Oz'), ('parigp', 'PARI/GP'), ('parser', 'Parser'), ('pascal', 'Pascal + Object Pascal'), ('pascaligo', 'Pascaligo'), ('pcaxis', 'PC Axis'), ('perl', 'Perl'), ('php', 'PHP'), ('phpdoc', 'PHPDoc'), ('php-extras', 'PHP Extras'), ('plsql', 'PL/SQL'), ('powershell', 'PowerShell'), ('processing', 'Processing'), ('prolog', 'Prolog'), ('properties', '.properties'), ('protobuf', 'Protocol Buffers'), ('pug', 'Pug'), ('puppet', 'Puppet'), ('pure', 'Pure'), ('python', 'Python'), ('q', 'Q (kdb+ database)'), ('qore', 'Qore'), ('r', 'R'), ('jsx', 'React JSX'), ('tsx', 'React TSX'), ('renpy', "Ren'py"), ('reason', 'Reason'), ('regex', 'Regex'), ('rest', 'reST (reStructuredText)'), ('rip', 'Rip'), ('roboconf', 'Roboconf'), ('robot-framework', 'Robot Framework'), ('ruby', 'Ruby'), ('rust', 'Rust'), ('sas', 'SAS'), ('sass', 'Sass (Sass)'), ('scss', 'Sass (Scss)'), ('scala', 'Scala'), ('scheme', 'Scheme'), ('shell-session', 'Shell Session'), ('smalltalk', 'Smalltalk'), ('smarty', 'Smarty'), ('solidity', 'Solidity (Ethereum)'), ('sparql', 'SPARQL'), ('splunk-spl', 'Splunk SPL'), ('sqf', 'SQF: Status Quo Function (Arma 3)'), ('sql', 'SQL'), ('soy', 'Soy (Closure Template)'), ('stylus', 'Stylus'), ('swift', 'Swift'), ('tap', 'TAP'), ('tcl', 'Tcl'), ('textile', 'Textile'), ('toml', 'TOML'), ('tt2', 'Template Toolkit 2'), ('twig', 'Twig'), ('typescript', 'TypeScript'), ('t4-cs', 'T4 Text Templates (C#)'), ('t4-vb', 'T4 Text Templates (VB)'), ('t4-templating', 'T4 templating'), ('vala', 'Vala'), ('vbnet', 'VB.Net'), ('velocity', 'Velocity'), ('verilog', 'Verilog'), ('vhdl', 'VHDL'), ('vim', 'vim'), ('visual-basic', 'Visual Basic'), ('wasm', 'WebAssembly'), ('wiki', 'Wiki markup'), ('xeora', 'Xeora + XeoraCube'), ('xojo', 'Xojo (REALbasic)'), ('xquery', 'XQuery'), ('yaml', 'YAML'), ('zig', 'Zig')], help_text='Coding language', identifier='language', label='Language')), ('code', wagtail.core.blocks.TextBlock(identifier='code', label='Code'))], icon='snippet'))], blank=True, null=True, verbose_name='Row Content'),
        ),
    ]
