{result:lengthBody(req.body.description,0,globalLimits.fieldLength.description),expected:false,error:__('Board description must be %s characters or less',globalLimits.fieldLength.description)},
{result:lengthBody(req.body.announcements,0,5000),expected:false,error:__('Board announcements must be 5000 characters or less')},
{result:lengthBody(req.body.tags,0,2000),expected:false,error:__('Tags length must be 2000 characters or less')},
{result:lengthBody(req.body.filters,0,20000),expected:false,error:__('Filters length must be 20000 characters or less')},
{result:lengthBody(req.body.custom_css,0,globalLimits.customCss.max),expected:false,error:__('Custom CSS must be %s characters or less',globalLimits.customCss.max)},
{result:arrayInBody(globalLimits.customCss.filters,req.body.custom_css),permission:Permissions.ROOT,expected:false,error:__('Custom CSS strict mode is enabled and does not allow the following: "%s"',globalLimits.customCss.filters.join('", "'))},
{result:lengthBody(req.body.name,1,globalLimits.fieldLength.boardname),expected:false,error:__('Board name must be 1-%s characters',globalLimits.fieldLength.boardname)},
{result:lengthBody(req.body.default_name,0,50),expected:false,error:__('Anon name must be 50 characters or less')},
{result:numberBody(req.body.reply_limit,globalLimits.replyLimit.min,globalLimits.replyLimit.max),expected:true,error:__('Reply Limit must be %s-%s',globalLimits.replyLimit.min,globalLimits.replyLimit.max)},
{result:numberBody(req.body.bump_limit,globalLimits.bumpLimit.min,globalLimits.bumpLimit.max),expected:true,error:__('Bump Limit must be %s-%s',globalLimits.bumpLimit.min,globalLimits.bumpLimit.max)},
{result:numberBody(req.body.thread_limit,globalLimits.threadLimit.min,globalLimits.threadLimit.max),expected:true,error:__('Threads Limit must be %s-%s',globalLimits.threadLimit.min,globalLimits.threadLimit.max)},
{result:numberBody(req.body.max_files,0,globalLimits.postFiles.max),expected:true,error:__('Max files must be 0-%s',globalLimits.postFiles.max)},
{result:numberBody(req.body.min_thread_message_length,0,globalLimits.fieldLength.message),expected:true,error:__('Min thread message length must be 0-%s',globalLimits.fieldLength.message)},
{result:numberBody(req.body.min_reply_message_length,0,globalLimits.fieldLength.message),expected:true,error:__('Min reply message length must be 0-%s',globalLimits.fieldLength.message)},
{result:numberBody(req.body.max_thread_message_length,0,globalLimits.fieldLength.message),expected:true,error:__('Max thread message length must be 0-%s',globalLimits.fieldLength.message)},
{result:numberBody(req.body.max_reply_message_length,0,globalLimits.fieldLength.message),expected:true,error:__('Max reply message length must be 0-%s',globalLimits.fieldLength.message)},
{result:minmaxBody(req.body.min_thread_message_length,req.body.max_thread_message_length),expected:true,error:__('Min and max thread message lengths must not violate eachother')},
{result:minmaxBody(req.body.min_reply_message_length,req.body.max_reply_message_length),expected:true,error:__('Min and max reply message lengths must not violate eachother')},
error:__('Min thread message length must be 0-%s and not more than "Max Thread Message Length" (currently %s)',globalLimits.fieldLength.message,res.locals.board.settings.maxThreadMessageLength)},
error:__('Min reply message length must be 0-%s and not more than "Max Reply Message Length" (currently %s)',globalLimits.fieldLength.message,res.locals.board.settings.maxReplyMessageLength)},
error:__('Max thread message length must be 0-%s and not less than "Min Thread Message Length" (currently %s)',globalLimits.fieldLength.message,res.locals.board.settings.minThreadMessageLength)},
error:__('Max reply message length must be 0-%s and not less than "Min Reply Message Length" (currently %s)',globalLimits.fieldLength.message,res.locals.board.settings.minReplyMessageLength)},