Pattern: builder, Python flavour