// Code generated by mkconsts.go. DO NOT EDIT.

//go:build goexperiment.regabidefer
// +build goexperiment.regabidefer

package goexperiment

const RegabiDefer = true
const RegabiDeferInt = 1
