added comments and added LoginREquired mixin