Re-working to use bs3