<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def plot_style(fig, ax, # pylint: disable=too-many-arguments, too-many-locals # plot_title pretitle='', title='Figure', posttitle='', title_fontsize=14, title_arg=None, # plot_labels label_fontsize=14, xlabel=None, xlabel_arg=None, ylabel=None, ylabel_arg=None, zlabel=None, zlabel_arg=None, # plot_ticks tick_fontsize=12, xticks=None, xticks_args=None, yticks=None, yticks_args=None, zticks=None, zticks_args=None, # update_plot_limits white_space=30, # plot_legend no_legend=True, legend_arg=None, # internal no_axes=False, aspect_ratio='equal', tight=False, **_):
 """Set the basic options of a matplotlib figure, to be used by viewing - plotting functions Args: fig(matplotlib figure):
 figure ax(matplotlib axes, belonging to `fig`):
 axes pretitle(str):
 String to include before the general title of the figure posttitle (str):
 String to include after the general title of the figure title (str):
 Set the title for the figure title_fontsize (int):
 Defines the size of the title's font title_arg (dict):
 Addition arguments for matplotlib.title() call label_fontsize(int):
 Size of the labels' font xlabel(str):
 The xlabel for the figure xlabel_arg(dict):
 Passsed into matplotlib as xlabel arguments ylabel(str):
 The ylabel for the figure ylabel_arg(dict):
 Passsed into matplotlib as ylabel arguments zlabel(str):
 The zlabel for the figure zlabel_arg(dict):
 Passsed into matplotlib as zlabel arguments tick_fontsize (int):
 Defines the size of the ticks' font xticks([list of ticks]):
 Defines the values of x ticks in the figure xticks_args(dict):
 Passsed into matplotlib as xticks arguments yticks([list of ticks]):
 Defines the values of y ticks in the figure yticks_args(dict):
 Passsed into matplotlib as yticks arguments zticks([list of ticks]):
 Defines the values of z ticks in the figure zticks_args(dict):
 Passsed into matplotlib as zticks arguments white_space(float):
 whitespace added to surround the tight limit of the data no_legend (bool):
 Defines the presence of a legend in the figure legend_arg (dict):
 Addition arguments for matplotlib.legend() call no_axes(bool):
 If True the labels and the frame will be set off aspect_ratio(str):
 Sets aspect ratio of the figure, according to matplotlib aspect_ratio tight(bool):
 If True the tight layout of matplotlib will be activated Returns: Matplotlib figure, matplotlib axes """

    plot_title(ax, pretitle, title, posttitle, title_fontsize, title_arg)
    plot_labels(ax, label_fontsize, xlabel, xlabel_arg, ylabel, ylabel_arg, zlabel, zlabel_arg)
    plot_ticks(ax, tick_fontsize, xticks, xticks_args, yticks, yticks_args, zticks, zticks_args)
    update_plot_limits(ax, white_space)
    plot_legend(ax, no_legend, legend_arg)

    if no_axes:
        ax.set_frame_on(False)
        ax.xaxis.set_visible(False)
        ax.yaxis.set_visible(False)

    ax.set_aspect(aspect_ratio)

    if tight:
        fig.set_tight_layout(True)