# Path: lib/fpos/core.py
# def money(value):
#     return "{:.2f}".format(value)
# 
# Path: lib/fpos/core.py
# def money(value):
# def lcs(a, b):


import argparse
import csv
import sys
import dateutil.parser as dp
import re
from datetime import datetime
from .core import money
from .core import date_fmt
from itertools import chain
sense[(_EMPTY, _NUMBER, _DATE, _STRING, _EMPTY, _EMPTY, _NUMBER, _NUMBER, _STRING)] = "bankwest"

sense[(_DATE, _STRING, _EMPTY, _NUMBER, _NUMBER, _STRING, _STRING, _EMPTY)] = "woolworths"
sense[(_DATE, _STRING, _NUMBER, _EMPTY, _NUMBER, _STRING, _STRING, _EMPTY)] = "woolworths"
sense[(_DATE, _STRING, _NUMBER, _EMPTY, _EMPTY, _STRING, _STRING, _EMPTY)] = "woolworths"

def _is_empty(x):
    return x is None or "" == x

def _is_date(x):
    try:
        dp.parse(x)
        return True
    except ValueError:
        pass
    return False

def _is_number(x):
    try:
        float(x)
        return True
    except ValueError:
        pass
    return False

def _compute_cell_type(x):
    if _is_empty(x):
        return _EMPTY
    elif _is_number(x):
        return _NUMBER

# Path: lib/fpos/core.py
# def money(value):
#     return "{:.2f}".format(value)
# 
# Path: lib/fpos/core.py
# def money(value):
# def lcs(a, b):


# Path: lib/fpos/transform.py
import argparse
import csv
import sys
import dateutil.parser as dp
import re
from datetime import datetime
from .core import money
from .core import date_fmt
from itertools import chain

sense[(_EMPTY, _NUMBER, _DATE, _STRING, _EMPTY, _EMPTY, _NUMBER, _NUMBER, _STRING)] = "bankwest"

sense[(_DATE, _STRING, _EMPTY, _NUMBER, _NUMBER, _STRING, _STRING, _EMPTY)] = "woolworths"
sense[(_DATE, _STRING, _NUMBER, _EMPTY, _NUMBER, _STRING, _STRING, _EMPTY)] = "woolworths"
sense[(_DATE, _STRING, _NUMBER, _EMPTY, _EMPTY, _STRING, _STRING, _EMPTY)] = "woolworths"

def _is_empty(x):
    return x is None or "" == x

def _is_date(x):
    try:
        dp.parse(x)
        return True
    except ValueError:
        pass
    return False

def _is_number(x):
    try:
        float(x)
        return True
    except ValueError:
        pass
    return False

def _compute_cell_type(x):
    if _is_empty(x):
        return _EMPTY
    elif _is_number(x):
        return _NUMBER

    elif _is_date(x):