    class
    	FORMAT_DOUBLE

    General
    	cluster: base
    	description: "Formatter for non-integral numbers"
    	create: make

    Ancestors
    	DOUBLE_MATH
    	FORMAT_INTEGER

    Queries
    	after_decimal_separate: BOOLEAN
    	bracketted_negative: BOOLEAN
    	centered: BOOLEAN
    	decimal: CHARACTER_8
    	decimals: INTEGER_32
    	fill_character: CHARACTER_8
    	formatted (d: REAL_64): STRING_8
    	ignore_sign: BOOLEAN
    	justification: INTEGER_32
    	leading_sign: BOOLEAN
    	left_justified: BOOLEAN
    	no_separator: BOOLEAN
    	not_justified: BOOLEAN
    	right_justified: BOOLEAN
    	separator: CHARACTER_8
    	show_sign: BOOLEAN
    	show_sign_negative: BOOLEAN
    	show_sign_positive: BOOLEAN
    	sign_format: INTEGER_32
    	sign_string: STRING_8
    	trailing_sign: BOOLEAN
    	width: INTEGER_32
    	zero_not_shown: BOOLEAN

    Commands
    	asterisk_fill
    	blank_fill
    	bracket_negative
    	center_justify
    	comma_decimal
    	comma_separate
    	dollar_fill
    	dot_separate
    	hide_zero
    	left_justify
    	make (w, d: INTEGER_32)
    	no_justify
    	no_separate_after_decimal
    	point_decimal
    	remove_separator
    	right_justify
    	separate_after_decimal
    	set_decimals (d: INTEGER_32)
    	set_defaults (w: INTEGER_32)
    	set_fill (c: CHARACTER_8)
    	set_separator (c: CHARACTER_8)
    	set_sign (s: STRING_8)
    	set_width (w: INTEGER_32)
    	show_zero
    	sign_cr_dr
    	sign_dr_cr
    	sign_floating_dollar
    	sign_floating_dollar_signed
    	sign_ignore
    	sign_leading
    	sign_negative_only
    	sign_normal
    	sign_positive_only
    	sign_show
    	sign_trailing
    	unbracket_negative
    	underscore_separate
    	zero_fill

    Constraints
    	separate all