Mailinglist Archive: yast-devel (73 mails)

< Previous Next >
Re: [yast-devel] Yast Development after SLE 12: What
On Tue, Jun 24, 2014 at 01:48:42PM +0200, Josef Reidinger wrote:
On Fri, 13 Jun 2014 15:16:52 +0200
Martin Vidner <mvidner@xxxxxxx> wrote:
Some options how to decide WHAT to refactor:

1. Measure code quality everywhere (with metric_fu) and pick the
worst code. 2. Measure code changes (metric_fu churn), assuming what
has changed in the past will need change in the future.
3. Count bugs. Probably hard on a file level but easy on a package
level by counting "bnc" in *.changes. That counts fixed bugs, not
reported ones.
4. Count feature requests (done and pending).

I think 2 and 4 make sense, as 3 is usually just subset of 2 and 1 can
affect code that we do not want to touch and hope noone use it :)

Problem of 2-4 is that it only count final place, but often when I
debug code or considering where to implement it I need to study how it
works now and it often need to read some ugly code and found, that in
the end I need to modify different file used from this ugly code, but I
think it is acceptable tradeoff.

What to refactor

I have used dirty cheap tricks to produce some initial metrics to
help us decide what to refactor, on a package level. Pepa has also
suggested other metrics, but they work on file level and are not so
cheap.

Top 10 results are inlined, complete in attachments.

1) Churn

Take the number of version bumps for a package between oS 13.1 and
SLE12. Conveniently, they all start at 3.1.0 :)

cd ~/github-checkout/yast
grep ^Version yast-*/package/*.spec | sort -k2 -V -r

yast-installation/package/yast2-installation.spec:Version: 3.1.97
yast-yast2/package/yast2.spec:Version: 3.1.82
yast-registration/package/yast2-registration.spec:Version: 3.1.82
yast-network/package/yast2-network.spec:Version: 3.1.67
yast-bootloader/package/yast2-bootloader.spec:Version: 3.1.61
yast-autoinstallation/package/autoyast2.spec:Version: 3.1.41
yast-storage/package/yast2-storage.spec:Version: 3.1.33
yast-users/package/yast2-users.spec:Version: 3.1.27
yast-packager/package/yast2-packager.spec:Version: 3.1.25
yast-theme/package/yast2-theme.spec:Version: 3.1.21

2) Features

Count "FATE" in the changelog. Cheat by going over the whole
changelog, not cutting off at oS 13.1.

grep --ignore-case --count fate yast*/package/*.changes | sort -t: -k2 -n -r

yast-installation/package/yast2-installation.changes:126
yast-network/package/yast2-network.changes:69
yast-yast2/package/yast2.changes:60
yast-storage/package/yast2-storage.changes:60
yast-packager/package/yast2-packager.changes:50
yast-bootloader/package/yast2-bootloader.changes:43
yast-autoinstallation/package/autoyast2.changes:33
yast-pkg-bindings/package/yast2-pkg-bindings.changes:19
yast-users/package/yast2-users.changes:17
yast-registration/package/yast2-registration.changes:14

3) Bugs

Analogous to Features

grep --ignore-case --count bnc yast*/package/*.changes | sort -t: -k2 -n -r

yast-installation/package/yast2-installation.changes:392
yast-network/package/yast2-network.changes:379
yast-yast2/package/yast2.changes:340
yast-storage/package/yast2-storage.changes:338
yast-packager/package/yast2-packager.changes:291
yast-bootloader/package/yast2-bootloader.changes:234
yast-autoinstallation/package/autoyast2.changes:150
yast-registration/package/yast2-registration.changes:128
yast-printer/package/yast2-printer.changes:123
yast-country/package/yast2-country.changes:116

Have you noticed Features and Bugs have the exact same packages in
top 7 places?

--
Martin Vidner, Cloud & Systems Management Team
http://en.opensuse.org/User:Mvidner

Kuracke oddeleni v restauraci je jako fekalni oddeleni v bazenu
yast-installation/package/yast2-installation.spec:Version: 3.1.97
yast-yast2/package/yast2.spec:Version: 3.1.82
yast-registration/package/yast2-registration.spec:Version: 3.1.82
yast-network/package/yast2-network.spec:Version: 3.1.67
yast-bootloader/package/yast2-bootloader.spec:Version: 3.1.61
yast-autoinstallation/package/autoyast2.spec:Version: 3.1.41
yast-storage/package/yast2-storage.spec:Version: 3.1.33
yast-users/package/yast2-users.spec:Version: 3.1.27
yast-packager/package/yast2-packager.spec:Version: 3.1.25
yast-theme/package/yast2-theme.spec:Version: 3.1.21
yast-theme/package/yast2-theme-SLE.spec:Version: 3.1.21
yast-ruby-bindings/package/yast2-ruby-bindings.spec:Version: 3.1.21
yast-devtools/package/yast2-devtools.spec:Version: 3.1.20
yast-update/package/yast2-update.spec:Version: 3.1.18
yast-auth-client/package/yast2-auth-client.spec:Version: 3.1.17
yast-services-manager/package/yast2-services-manager.spec:Version: 3.1.16
yast-kdump/package/yast2-kdump.spec:Version: 3.1.16
yast-s390/package/yast2-s390.spec:Version: 3.1.15
yast-pkg-bindings/package/yast2-pkg-bindings.spec:Version: 3.1.15
yast-pkg-bindings/package/yast2-pkg-bindings-devel-doc.spec:Version:
3.1.15
yast-vm/package/yast2-vm.spec:Version: 3.1.14
yast-iscsi-client/package/yast2-iscsi-client.spec:Version: 3.1.14
yast-ldap/package/yast2-ldap.spec:Version: 3.1.11
yast-fcoe-client/package/yast2-fcoe-client.spec:Version: 3.1.10
yast-cluster/package/yast2-cluster.spec:Version: 3.1.10
yast-samba-client/package/yast2-samba-client.spec:Version: 3.1.9
yast-ntp-client/package/yast2-ntp-client.spec:Version: 3.1.9
yast-installation-control/package/yast2-installation-control.spec:Version:
3.1.9
yast-country/package/yast2-country.spec:Version: 3.1.9
yast-samba-server/package/yast2-samba-server.spec:Version: 3.1.8
yast-nis-client/package/yast2-nis-client.spec:Version: 3.1.8
yast-add-on/package/yast2-add-on.spec:Version: 3.1.8
yast-ycp-ui-bindings/package/yast2-ycp-ui-bindings.spec:Version: 3.1.7
yast-nfs-server/package/yast2-nfs-server.spec:Version: 3.1.7
yast-iscsi-lio-server/package/yast2-iscsi-lio-server.spec:Version: 3.1.7
yast-core/package/yast2-core.spec:Version: 3.1.7
yast-slp/package/yast2-slp.spec:Version: 3.1.6
yast-dns-server/package/yast2-dns-server.spec:Version: 3.1.6
yast-control-center-gnome/package/yast2-control-center-gnome.spec:Version:
3.1.6
yast-slide-show/package/yast2-slide-show.spec:Version: 3.1.5
yast-product-creator/package/yast2-product-creator.spec:Version: 3.1.5
yast-online-update/package/yast2-online-update.spec:Version: 3.1.5
yast-online-update-configuration/package/yast2-online-update-configuration.spec:Version:
3.1.5
yast-nfs-client/package/yast2-nfs-client.spec:Version: 3.1.5
yast-ldap-client/package/yast2-ldap-client.spec:Version: 3.1.5
yast-inetd/package/yast2-inetd.spec:Version: 3.1.5
yast-drbd/package/yast2-drbd.spec:Version: 3.1.5
yast-support/package/yast2-support.spec:Version: 3.1.4
yast-sound/package/yast2-sound.spec:Version: 3.1.4
yast-reipl/package/yast2-reipl.spec:Version: 3.1.4
yast-iplb/package/yast2-iplb.spec:Version: 3.1.4
yast-geo-cluster/package/yast2-geo-cluster.spec:Version: 3.1.4
yast-cio/package/yast2-cio.spec:Version: 3.1.4
yast-ca-management/package/yast2-ca-management.spec:Version: 3.1.4
yast-x11/package/yast2-x11.spec:Version: 3.1.3
yast-tune/package/yast2-tune.spec:Version: 3.1.3
yast-squid/package/yast2-squid.spec:Version: 3.1.3
yast-snapper/package/yast2-snapper.spec:Version: 3.1.3
yast-security/package/yast2-security.spec:Version: 3.1.3
yast-metapackage/package/yast2-metapackage-handler.spec:Version: 3.1.3
yast-live-installer/package/yast2-live-installer.spec:Version: 3.1.3
yast-isns/package/yast2-isns.spec:Version: 3.1.3
yast-hardware-detection/package/yast2-hardware-detection.spec:Version:
3.1.3
yast-control-center/package/yast2-control-center.spec:Version: 3.1.3
yast-testsuite/package/yast2-testsuite.spec:Version: 3.1.2
yast-perl-bindings/package/yast2-perl-bindings.spec:Version: 3.1.2
yast-nis-server/package/yast2-nis-server.spec:Version: 3.1.2
yast-multipath/package/yast2-multipath.spec:Version: 3.1.2
yast-mail/package/yast2-mail.spec:Version: 3.1.2
yast-dhcp-server/package/yast2-dhcp-server.spec:Version: 3.1.2
yast-apparmor/package/yast2-apparmor.spec:Version: 3.1.2
yast-xml/package/yast2-xml.spec:Version: 3.1.1
yast-transfer/package/yast2-transfer.spec:Version: 3.1.1
yast-tftp-server/package/yast2-tftp-server.spec:Version: 3.1.1
yast-sysconfig/package/yast2-sysconfig.spec:Version: 3.1.1
yast-sudo/package/yast2-sudo.spec:Version: 3.1.1
yast-slp-server/package/yast2-slp-server.spec:Version: 3.1.1
yast-scanner/package/yast2-scanner.spec:Version: 3.1.1
yast-rear/package/yast2-rear.spec:Version: 3.1.1
yast-python-bindings/package/yast2-python-bindings.spec:Version: 3.1.1
yast-proxy/package/yast2-proxy.spec:Version: 3.1.1
yast-printer/package/yast2-printer.spec:Version: 3.1.1
yast-pam/package/yast2-pam.spec:Version: 3.1.1
yast-lxc/package/yast2-lxc.spec:Version: 3.1.1
yast-ldap-server/package/yast2-ldap-server.spec:Version: 3.1.1
yast-kerberos-server/package/yast2-kerberos-server.spec:Version: 3.1.1
yast-kerberos-client/package/yast2-kerberos-client.spec:Version: 3.1.1
yast-instserver/package/yast2-instserver.spec:Version: 3.1.1
yast-ftp-server/package/yast2-ftp-server.spec:Version: 3.1.1
yast-firstboot/package/yast2-firstboot.spec:Version: 3.1.1
yast-firewall/package/yast2-firewall.spec:Version: 3.1.1
yast-dbus-server/package/yast2-dbus-server.spec:Version: 3.1.1
yast-audit-laf/package/yast2-audit-laf.spec:Version: 3.1.1
yast-add-on-creator/package/yast2-add-on-creator.spec:Version: 3.1.1
yast-schema/package/yast2-schema.spec:Version: 3.1.0
yast-rdp/package/yast2-rdp.spec:Version: 3.1.0
yast-pos-installation/package/yast2-pos-installation.spec:Version: 3.1.0
yast-openvas-security-scanner/package/yast2-openvas-security-scanner.spec:Version:
3.1.0
yast-installation-control-SLE/package/yast2-installation-control-SLES.spec:Version:
3.1.0
yast-http-server/package/yast2-http-server.spec:Version: 3.1.0
yast-crowbar/package/yast2-crowbar.spec:Version: 3.1.0
yast-branding/package/yast2-branding-SLE.spec:Version: 3.1.0
yast-branding/package/yast2-branding-openSUSE.spec:Version: 3.1.0
yast-boot-server/package/yast2-boot-server.spec:Version: 3.1.0
yast-rake/package/rubygem-yast-rake.spec:Version: 0.1.8
yast-installation/package/yast2-installation.changes:126
yast-network/package/yast2-network.changes:69
yast-yast2/package/yast2.changes:60
yast-storage/package/yast2-storage.changes:60
yast-packager/package/yast2-packager.changes:50
yast-bootloader/package/yast2-bootloader.changes:43
yast-autoinstallation/package/autoyast2.changes:33
yast-pkg-bindings/package/yast2-pkg-bindings.changes:19
yast-users/package/yast2-users.changes:17
yast-registration/package/yast2-registration.changes:14
yast-ldap-client/package/yast2-ldap-client.changes:14
yast-core/package/yast2-core.changes:14
yast-product-creator/package/yast2-product-creator.changes:13
yast-add-on/package/yast2-add-on.changes:11
yast-online-update/package/yast2-online-update.changes:10
yast-ldap-server/package/yast2-ldap-server.changes:10
yast-s390/package/yast2-s390.changes:9
yast-security/package/yast2-security.changes:9
yast-nfs-client/package/yast2-nfs-client.changes:9
yast-dns-server/package/yast2-dns-server.changes:9
yast-update/package/yast2-update.changes:8
yast-samba-client/package/yast2-samba-client.changes:8
yast-kdump/package/yast2-kdump.changes:8
yast-firstboot/package/yast2-firstboot.changes:8
yast-firewall/package/yast2-firewall.changes:8
yast-printer/package/yast2-printer.changes:7
yast-ntp-client/package/yast2-ntp-client.changes:7
yast-iscsi-client/package/yast2-iscsi-client.changes:7
yast-country/package/yast2-country.changes:7
yast-ca-management/package/yast2-ca-management.changes:7
yast-sound/package/yast2-sound.changes:6
yast-apparmor/package/yast2-apparmor.changes:6
yast-samba-server/package/yast2-samba-server.changes:5
yast-perl-bindings/package/yast2-perl-bindings.changes:4
yast-dhcp-server/package/yast2-dhcp-server.changes:4
yast-add-on-creator/package/yast2-add-on-creator.changes:4
yast-ycp-ui-bindings/package/yast2-ycp-ui-bindings.changes:3
yast-vm/package/yast2-vm.changes:3
yast-theme/package/yast2-theme-SLE.changes:3
yast-theme/package/yast2-theme.changes:3
yast-snapper/package/yast2-snapper.changes:3
yast-online-update-configuration/package/yast2-online-update-configuration.changes:3
yast-nfs-server/package/yast2-nfs-server.changes:3
yast-kerberos-client/package/yast2-kerberos-client.changes:3
yast-tune/package/yast2-tune.changes:2
yast-support/package/yast2-support.changes:2
yast-slp/package/yast2-slp.changes:2
yast-ruby-bindings/package/yast2-ruby-bindings.changes:2
yast-pos-installation/package/yast2-pos-installation.changes:2
yast-iscsi-lio-server/package/yast2-iscsi-lio-server.changes:2
yast-control-center/package/yast2-control-center.changes:2
yast-branding/package/yast2-branding-openSUSE.changes:2
yast-testsuite/package/yast2-testsuite.changes:1
yast-sysconfig/package/yast2-sysconfig.changes:1
yast-sudo/package/yast2-sudo.changes:1
yast-squid/package/yast2-squid.changes:1
yast-services-manager/package/yast2-services-manager.changes:1
yast-openvas-security-scanner/package/yast2-openvas-security-scanner.changes:1
yast-nis-client/package/yast2-nis-client.changes:1
yast-metapackage/package/yast2-metapackage-handler.changes:1
yast-ldap/package/yast2-ldap.changes:1
yast-isns/package/yast2-isns.changes:1
yast-instserver/package/yast2-instserver.changes:1
yast-http-server/package/yast2-http-server.changes:1
yast-hardware-detection/package/yast2-hardware-detection.changes:1
yast-ftp-server/package/yast2-ftp-server.changes:1
yast-drbd/package/yast2-drbd.changes:1
yast-devtools/package/yast2-devtools.changes:1
yast-cio/package/yast2-cio.changes:1
yast-x11/package/yast2-x11.changes:0
yast-xml/package/yast2-xml.changes:0
yast-transfer/package/yast2-transfer.changes:0
yast-tftp-server/package/yast2-tftp-server.changes:0
yast-slp-server/package/yast2-slp-server.changes:0
yast-slide-show/package/yast2-slide-show.changes:0
yast-slepos-system-manager/package/yast2-slepos-system-manager.changes:0
yast-slepos-image-builder/package/yast2-slepos-image-builder.changes:0
yast-schema/package/yast2-schema.changes:0
yast-scanner/package/yast2-scanner.changes:0
yast-reipl/package/yast2-reipl.changes:0
yast-rear/package/yast2-rear.changes:0
yast-rdp/package/yast2-rdp.changes:0
yast-rake/package/rubygem-yast-rake.changes:0
yast-python-bindings/package/yast2-python-bindings.changes:0
yast-proxy/package/yast2-proxy.changes:0
yast-pkg-bindings/package/yast2-pkg-bindings-devel-doc.changes:0
yast-pam/package/yast2-pam.changes:0
yast-online-update-test/package/yast2-online-update-test.changes:0
yast-ntsutils/package/yast2-ntsutils.changes:0
yast-nis-server/package/yast2-nis-server.changes:0
yast-multipath/package/yast2-multipath.changes:0
yast-mail-server/package/yast2-mail-server.changes:0
yast-mail/package/yast2-mail.changes:0
yast-lxc/package/yast2-lxc.changes:0
yast-live-installer/package/yast2-live-installer.changes:0
yast-kerberos-server/package/yast2-kerberos-server.changes:0
yast-iplb/package/yast2-iplb.changes:0
yast-installation-control-SLE/package/yast2-installation-control-SLES.changes:0
yast-installation-control/package/yast2-installation-control.changes:0
yast-inetd/package/yast2-inetd.changes:0
yast-geo-cluster/package/yast2-geo-cluster.changes:0
yast-fcoe-client/package/yast2-fcoe-client.changes:0
yast-dbus-server/package/yast2-dbus-server.changes:0
yast-crowbar/package/yast2-crowbar.changes:0
yast-control-center-gnome/package/yast2-control-center-gnome.changes:0
yast-cluster/package/yast2-cluster.changes:0
yast-cim/package/yast2-cim.changes:0
yast-certify/package/yast2-module-certify.changes:0
yast-branding/package/yast2-branding-SLE.changes:0
yast-boot-server/package/yast2-boot-server.changes:0
yast-auth-client/package/yast2-auth-client.changes:0
yast-audit-laf/package/yast2-audit-laf.changes:0
yast-installation/package/yast2-installation.changes:392
yast-network/package/yast2-network.changes:379
yast-yast2/package/yast2.changes:340
yast-storage/package/yast2-storage.changes:338
yast-packager/package/yast2-packager.changes:291
yast-bootloader/package/yast2-bootloader.changes:234
yast-autoinstallation/package/autoyast2.changes:150
yast-registration/package/yast2-registration.changes:128
yast-printer/package/yast2-printer.changes:123
yast-country/package/yast2-country.changes:116
yast-users/package/yast2-users.changes:114
yast-pkg-bindings/package/yast2-pkg-bindings.changes:108
yast-product-creator/package/yast2-product-creator.changes:95
yast-iscsi-client/package/yast2-iscsi-client.changes:71
yast-ldap-client/package/yast2-ldap-client.changes:70
yast-ldap-server/package/yast2-ldap-server.changes:69
yast-core/package/yast2-core.changes:67
yast-ntp-client/package/yast2-ntp-client.changes:57
yast-update/package/yast2-update.changes:56
yast-samba-client/package/yast2-samba-client.changes:52
yast-theme/package/yast2-theme-SLE.changes:51
yast-scanner/package/yast2-scanner.changes:51
yast-theme/package/yast2-theme.changes:48
yast-add-on/package/yast2-add-on.changes:47
yast-sound/package/yast2-sound.changes:46
yast-apparmor/package/yast2-apparmor.changes:44
yast-online-update/package/yast2-online-update.changes:43
yast-s390/package/yast2-s390.changes:41
yast-nfs-client/package/yast2-nfs-client.changes:41
yast-kdump/package/yast2-kdump.changes:40
yast-mail/package/yast2-mail.changes:39
yast-control-center/package/yast2-control-center.changes:37
yast-ca-management/package/yast2-ca-management.changes:37
yast-dns-server/package/yast2-dns-server.changes:35
yast-security/package/yast2-security.changes:33
yast-vm/package/yast2-vm.changes:31
yast-samba-server/package/yast2-samba-server.changes:31
yast-http-server/package/yast2-http-server.changes:29
yast-add-on-creator/package/yast2-add-on-creator.changes:28
yast-firewall/package/yast2-firewall.changes:25
yast-kerberos-client/package/yast2-kerberos-client.changes:24
yast-firstboot/package/yast2-firstboot.changes:24
yast-support/package/yast2-support.changes:22
yast-squid/package/yast2-squid.changes:22
yast-ftp-server/package/yast2-ftp-server.changes:22
yast-tune/package/yast2-tune.changes:21
yast-snapper/package/yast2-snapper.changes:21
yast-sudo/package/yast2-sudo.changes:20
yast-nis-client/package/yast2-nis-client.changes:20
yast-live-installer/package/yast2-live-installer.changes:20
yast-crowbar/package/yast2-crowbar.changes:20
yast-instserver/package/yast2-instserver.changes:19
yast-nfs-server/package/yast2-nfs-server.changes:18
yast-devtools/package/yast2-devtools.changes:18
yast-services-manager/package/yast2-services-manager.changes:17
yast-fcoe-client/package/yast2-fcoe-client.changes:17
yast-audit-laf/package/yast2-audit-laf.changes:17
yast-ycp-ui-bindings/package/yast2-ycp-ui-bindings.changes:16
yast-ruby-bindings/package/yast2-ruby-bindings.changes:15
yast-pos-installation/package/yast2-pos-installation.changes:15
yast-slp-server/package/yast2-slp-server.changes:14
yast-cluster/package/yast2-cluster.changes:14
yast-slide-show/package/yast2-slide-show.changes:13
yast-nis-server/package/yast2-nis-server.changes:12
yast-isns/package/yast2-isns.changes:12
yast-iscsi-lio-server/package/yast2-iscsi-lio-server.changes:12
yast-dhcp-server/package/yast2-dhcp-server.changes:12
yast-sysconfig/package/yast2-sysconfig.changes:11
yast-ldap/package/yast2-ldap.changes:11
yast-drbd/package/yast2-drbd.changes:11
yast-metapackage/package/yast2-metapackage-handler.changes:10
yast-control-center-gnome/package/yast2-control-center-gnome.changes:10
yast-kerberos-server/package/yast2-kerberos-server.changes:9
yast-auth-client/package/yast2-auth-client.changes:9
yast-tftp-server/package/yast2-tftp-server.changes:8
yast-reipl/package/yast2-reipl.changes:8
yast-dbus-server/package/yast2-dbus-server.changes:8
yast-inetd/package/yast2-inetd.changes:7
yast-slp/package/yast2-slp.changes:6
yast-online-update-configuration/package/yast2-online-update-configuration.changes:6
yast-multipath/package/yast2-multipath.changes:6
yast-perl-bindings/package/yast2-perl-bindings.changes:5
yast-pam/package/yast2-pam.changes:5
yast-iplb/package/yast2-iplb.changes:5
yast-installation-control/package/yast2-installation-control.changes:5
yast-python-bindings/package/yast2-python-bindings.changes:4
yast-boot-server/package/yast2-boot-server.changes:4
yast-x11/package/yast2-x11.changes:3
yast-testsuite/package/yast2-testsuite.changes:3
yast-lxc/package/yast2-lxc.changes:3
yast-geo-cluster/package/yast2-geo-cluster.changes:3
yast-hardware-detection/package/yast2-hardware-detection.changes:2
yast-branding/package/yast2-branding-openSUSE.changes:2
yast-xml/package/yast2-xml.changes:1
yast-schema/package/yast2-schema.changes:1
yast-rear/package/yast2-rear.changes:1
yast-rdp/package/yast2-rdp.changes:1
yast-pkg-bindings/package/yast2-pkg-bindings-devel-doc.changes:1
yast-openvas-security-scanner/package/yast2-openvas-security-scanner.changes:1
yast-branding/package/yast2-branding-SLE.changes:1
yast-transfer/package/yast2-transfer.changes:0
yast-slepos-system-manager/package/yast2-slepos-system-manager.changes:0
yast-slepos-image-builder/package/yast2-slepos-image-builder.changes:0
yast-rake/package/rubygem-yast-rake.changes:0
yast-proxy/package/yast2-proxy.changes:0
yast-online-update-test/package/yast2-online-update-test.changes:0
yast-ntsutils/package/yast2-ntsutils.changes:0
yast-mail-server/package/yast2-mail-server.changes:0
yast-installation-control-SLE/package/yast2-installation-control-SLES.changes:0
yast-cio/package/yast2-cio.changes:0
yast-cim/package/yast2-cim.changes:0
yast-certify/package/yast2-module-certify.changes:0
< Previous Next >
Follow Ups