         container.backgroundColor = highlighted ? .secondaryShadow : .white
     }
 
-    func setTransaction(_ transaction: Transaction) {
-        self.transaction.attributedText = transaction.descriptionString
-        status.text = transaction.status
-        comment.text = transaction.comment
-        timestamp.text = transaction.timestampString
-    }
-
     required init?(coder aDecoder: NSCoder) {
         fatalError("init(coder:) has not been implemented")
     }

        innerShadow.backgroundColor = .secondaryShadow
    }

    func setStyle(_ style: TransactionCellStyle) {
        container.style = style
        shadowView.style = style
        if style == .last || style == .single {
            innerShadow.isHidden = true
        } else {
            innerShadow.isHidden = false
        }
    }

    override func setSelected(_ selected: Bool, animated: Bool) {
        //intentional noop for now
        //The default selected state doesn't play nicely


class TransactionTableViewCell : UITableViewCell {

    //MARK: - Public
    override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
        super.init(style: style, reuseIdentifier: reuseIdentifier)
        setupViews()
    }

    func setStyle(_ style: TransactionCellStyle) {
        container.style = style
        shadowView.style = style
        if style == .last || style == .single {
            innerShadow.isHidden = true
        } else {
            innerShadow.isHidden = false
        }
    }

    func setTransaction(_ transaction: Transaction) {
        self.transaction.attributedText = transaction.descriptionString
        status.text = transaction.status
        comment.text = transaction.comment
        timestamp.text = transaction.timestampString
    }

    //MARK: - Private
    private let transaction = UILabel()
    private let status = UILabel(font: UIFont.customBody(size: 13.0))
    private let comment = UILabel.wrapping(font: UIFont.customBody(size: 13.0))
    private let timestamp = UILabel(font: UIFont.customMedium(size: 13.0))
    private let container = RoundedContainer()
    private let shadowView = MaskedShadow()
    private let innerShadow = UIView()

    private let topPadding: CGFloat = 19.0
    private var style: TransactionCellStyle = .first

    private func setupViews() {
        addSubviews()
