class_docstr: Initialise a BIFWriter Object
  
  Parameters
  ----------
  model: BayesianNetwork Instance
  
  round_values: int (default: None)
      Round the probability values to `round_values` decimals. If None, keeps all decimal points.
  
  Examples
  ---------
  >>> from pgmpy.readwrite import BIFWriter
  >>> from pgmpy.utils import get_example_model
  >>> asia = get_example_model('asia')
  >>> writer = BIFWriter(asia)
  >>> writer
  <writer_BIF.BIFWriter at 0x7f05e5ea27b8>
  >>> writer.write_bif('asia.bif')
docstr: Add property to variables in BIF
  
  Returns
  -------
  dict: dict of type {variable: list of properties }
  
  Example
  -------
  >>> from pgmpy.readwrite import BIFReader, BIFWriter
  >>> model = BIFReader('dog-problem.bif').get_model()
  >>> writer = BIFWriter(model)
  >>> writer.get_properties()
  {'bowel-problem': ['position = (335, 99)'],
   'dog-out': ['position = (300, 195)'],
   'family-out': ['position = (257, 99)'],
   'hear-bark': ['position = (296, 268)'],
   'light-on': ['position = (218, 195)']}
code: def get_properties(self):
      """
      Add property to variables in BIF
  
      Returns
      -------
      dict: dict of type {variable: list of properties }
  
      Example
      -------
      >>> from pgmpy.readwrite import BIFReader, BIFWriter
      >>> model = BIFReader('dog-problem.bif').get_model()
      >>> writer = BIFWriter(model)
      >>> writer.get_properties()
      {'bowel-problem': ['position = (335, 99)'],
       'dog-out': ['position = (300, 195)'],
       'family-out': ['position = (257, 99)'],
       'hear-bark': ['position = (296, 268)'],
       'light-on': ['position = (218, 195)']}
      """
      variables = self.model.nodes()
      property_tag = {}
      for variable in sorted(variables):
          properties = self.model.nodes[variable]
          properties = collections.OrderedDict(
              sorted(properties.items())
          )
          property_tag[variable] = []
          for prop, val in properties.items():
              property_tag[variable].append(
                  str(prop) + " = " + str(val)
              )
      return property_tag
  
imports: import collections
  import re
  from copy import copy
  from itertools import product
  from string import Template
  import numpy
  import pyparsing
  from joblib import Parallel, delayed
  from pyparsing import CharsNotIn, Group, OneOrMore, Optional, Suppress, Word, ZeroOrMore, alphanums, cppStyleComment, nums, printables
  from pgmpy.factors.discrete import TabularCPD
  from pgmpy.models import BayesianNetwork
  from pgmpy.utils import compat_fns
label_desc: Use image node_id 6 for calling the BIFWriter obj's underlying member method code with example usage: obj.get_properties() and returns: property_tag