updating format and adding additional functionality