protected override void SetupLayoutConstraints()
        {
            base.SetupLayoutConstraints();

            this.SubviewsDoNotTranslateAutoresizingMaskIntoConstraints();

            this.AddConstraints(
                TypeImage.AtLeftOf(this, AppDimens.Inset1X),
                TypeImage.AtTopOf(this, AppDimens.Inset1X),
                TypeImage.AtBottomOf(this, AppDimens.Inset1X),
                TypeImage.WithSameCenterY(this),
                TypeImage.Height().EqualTo(AppDimens.DefaultTypeImageSize),
                TypeImage.Width().EqualTo(AppDimens.DefaultTypeImageSize));

            this.AddConstraints(
                DurationLabel.ToRightOf(TypeImage, AppDimens.Inset1X),
                DurationLabel.AtTopOf(TypeImage, AppDimens.InsetHalf));

            this.AddConstraints(
                TypeLabel.ToRightOf(TypeImage, AppDimens.Inset1X),
                TypeLabel.AtBottomOf(TypeImage, AppDimens.InsetHalf));

            this.AddConstraints(
                StatusLabel.AtRightOf(this, AppDimens.Inset1X),
                StatusLabel.WithSameCenterY(this));

            this.AddConstraints(
                Separator.WithSameLeft(DurationLabel),
                Separator.WithSameRight(this),
                Separator.WithSameBottom(this),
                Separator.Height().EqualTo(AppDimens.DefaultSeparatorSize));
        }