Some flexibility and UI added.