class SessionLoginHelper {

    private void startLogin() throws BiliLiveException {
        try {
            status = NOT_COMPLETED;
            miniLoginPage = webClient.getPage(MINILOGIN_URL);
            miniLoginPage.executeJavaScript(LOGIN_JAVASCRIPT);
            webClient.setStatusHandler((page, message) -> {
                if (page == miniLoginPage) {
                    parseStatus(message);
                }
            });
        } catch (IOException ex) {
            throw new NetworkException("IO Exception", ex);
        }
    }

    public  SessionLoginHelper(@NotNull String email, @NotNull String password);
    public  SessionLoginHelper(@NotNull String email, @NotNull String password, @NotNull String userAgent);
    public  SessionLoginHelper(@NotNull String email, @NotNull String password,
                              long loginTimeoutMillis, boolean keepLoggingIn, @NotNull String userAgent);

}