def post_config_hook(self):
if not self.py3.check_commands("<STR_LIT>"):<EOL><INDENT>raise Exception(STRING_NOT_INSTALLED)<EOL><DEDENT>elif self.statistics_type not in ["<STR_LIT:d>", "<STR_LIT:m>"]:<EOL><INDENT>raise Exception(STRING_INVALID_TYPE)<EOL><DEDENT>self.slice = slice(*(<NUM_LIT:3>, <NUM_LIT:6>) if self.statistics_type == "<STR_LIT:d>" else (<NUM_LIT:8>, <NUM_LIT:11>))<EOL>self.value_format = "<STR_LIT>" % (self.left_align, self.precision)<EOL>self.units = ["<STR_LIT>", "<STR_LIT>", "<STR_LIT>", "<STR_LIT>"]<EOL>self.coloring = getattr(self, "<STR_LIT>", None)<EOL>if self.coloring and not self.thresholds:<EOL><INDENT>self.thresholds = [<EOL>(num * <NUM_LIT> ** <NUM_LIT:2>, col) for num, col in self.coloring.items()<EOL>]<EOL><DEDENT>self.thresholds_init = self.py3.get_color_names_list(self.format)<EOL>
Format of total, up and down placeholders under FORMAT.
As default, substitutes left_align and precision as %s and %s
Placeholders:
    value - value (float)
    unit - unit (string)