text:
/ Blog / Progress Report: September 2021
Progress Report: September 2021
It's been a busy month! We've had a lot of movement in kernel land, as well as some tooling improvements and reverse engineering sessions. At this point, Asahi Linux is usable as a basic Linux desktop (without GPU acceleration)! The ground had been shifting until now, but we're seeing drivers settle down. Let's take a look at what's been going on.
Linux drivers galore
Earlier this year we saw the absolute lowest level drivers being merged into the kernel. Those are important for bring-up, but to get a usable system we need many more. Over September we've seen a lot of action on this front, with many important drivers now in review or even already merged for Linux 5.16. The goal of the Asahi Linux project is to upstream everything into the Linux kernel, so all our drivers are eventually headed for upstream review.
PCIe bindings (merged): Mark Kettenis has been working on porting U-Boot and OpenBSD to the M1, and he contributed the Device Tree bindings for the PCI Express hardware in the M1. These bindings are effectively the standard that allows multiple open OSes to agree on how the hardware is described, so they can boot from the same bootloader.
PCIe driver (pcie-apple, merged): Marc Zyngier polished up the PCIe driver and all the little dependencies and changes that came along with it. The job of this driver is to set up the physical PCIe ports, handle MSI interrupt mapping to the M1's AIC interrupt controller, and work together with the DART IOMMU driver to put devices in the right IOMMU groups. With this ready, the USB-A and Ethernet ports on the Mac Mini now work, as those are standard PCIe chips that Linux already has drivers for.
USB-C PD driver (tps6598x, merged): M1 machines use Texas Instruments USB-C controller chips, which handle things like USB-PD negotiation and alternate modes. Linux already has a basic driver for the TPS6598X versions, but the chips in M1 machines are special Apple variants (CD3217/CD3218) which are slightly different. Sven Peter has been hard at work adapting the existing driver to support them. This makes charging and USB2 hotplugging work - although an extra patch is needed for the latter, due to a handshake that needs to happen on M1 machines between the USB-C controller and the USB hardware in the M1, to configure the eUSB2 repeater between them. Bet you hadn't heard of that USB standard before!
Pinctrl driver (apple-gpio-pinctrl, in review): Joey Gouly has been busy cleaning up and rewriting the GPIO/pinctrl driver. This driver handles the general purpose I/O pins of the M1, which are used for things like controlling reset lines for external peripherals. It's a requirement to make PCIe work properly, as this is how peripheral resets are controlled. Joey and I (marcan) spent some time, multimeter and oscilloscope in hand, working out exactly what all the bits in the GPIO controller do, so now we have a firm understanding of what features are supported by the hardware and how they work. The driver is looking good and is likely to be ready to merge in the next patchset version.
I²C driver (i2c-pasemiin review): The M1 borrows its I²C hardware from… none other than the PA Semi PWRficient PA6T-1682M, used in the AmigaOne X1000! Turns out there is some clear PA Semi legacy in these chips! Linux already has a driver for this hardware, but on the PowerPC chips it is a PCI device, while on the M1 it is a platform device. Sven has submitted a patch series to decouple the existing driver from the PCI part and add platform device support. It's currently being tested by the folks with AmigaOne hardware to make sure nothing broke along the way, and should be ready to merge after that. This hardware is used to talk to things like the audio amplifier chips and the USB-C port controllers.
ASC mailbox driver (apple-mailbox, in review): Apple SoCs have tons of different side cores to handle auxiliary tasks, and these cores need to communicate with the main CPU. These are known as "ASC"s, and they all share the same low-level "mailbox" hardware. Sven has also contributed this driver, which handles the lowest level of communication (sending/receiving 96-bit messages).
IOMMU 4K patches (in review): The M1 is peculiar in that, although it supports OSes that use either 16K or 4K pages, it really is designed for 16K systems. Its DART IOMMU hardware only supports 16K pages. These chips have 4K support chiefly to make Rosetta work on macOS, but macOS itself always runs with 16K pages – only Rosetta apps end up in 4K mode. Linux can't really mix page sizes like that and likely never will be able to, so we're left with a conundrum: running a 16K kernel makes compatibility with older userspace difficult (chiefly Android and x86 emulation), plus distros don't usually ship 16K kernels; while running a 4K kernel runs into a major mismatch with the DART. This initially seemed like a problem too intractable to solve, but Sven took on the challenge and now has a patch series that makes Linux's IOMMU support layer play nicely with hardware that has an IOMMU page size larger than the kernel page size! It's not perfect, as it can't support a select few corner case drivers (that do things that are fundamentally impossible to support in this situation), but it works well and will support everything we need to make 4K kernels viable.
Device Power Management (apple-pmgr-pwrstate, in review): A fundamental part of any modern power-efficient SoC is the ability to turn parts of itself on and off, to various extents, to save power. On many SoCs this is handled as discrete hardware that can do things like control power to different blocks, turn clocks on and off, etc, requiring complex sequences of operations. Apple SoCs instead have a much higher level interface that automates most of the hard work. This was actually confusing at first, as we thought the hardware was doing fewer things than it really was! We ended up rewriting this driver multiple times, using different kernel abstractions, as we understood the hardware better. I wrote the latest iteration, which represents the hardware as Linux Generic Power Domains. This allows it to integrate smoothly with the Linux device framework, and works even for hardware that doesn't have power management support in its driver yet (the device is always on in that case). I also added power management support to the UART driver, as a proof of concept. As a bonus, the driver also handles resetting hardware blocks (as a reset provider), which we can use to allow re-loading drivers for other hardware without running into problems.
CPU frequency scaling (apple-cluster-clk, final cleanup before RFC): Continuing the power management theme, Linux needs a driver for CPU core frequency scaling. At boot, the 4 "Icestorm" efficiency cores are at max performance, but the 4 "Firestorm" performance cores are at the lowest performance state. Similar to device PM, the M1 has a very high level interface for this, but with a twist: in higher CPU performance states, it is also desirable to adjust the memory controller configuration to increase system performance. I wrote two drivers to do this: one to control the performance state of a CPU cluster, and one to control the memory controller configuration. The current approach piggybacks off of the existing cpufreq-dt driver to do the heavy lifting, but needs to go through a round of comments before I can confidently settle on this approach. As part of this work, I also benchmarked the CPU frequency switching latencies, which we can provide to the cpufreq framework to help it make the correct decisions.
RTKit layer (apple-rtkit, in development/functional): The ASC mailbox driver only provides low-level communications, but almost all of the ASC coprocessors run the RTKit embedded operating system and provide a similar higher-level communications interface on top. Sven developed this library module to allow downstream device drivers to share this common handling code. It currently works well and is used by the NVMe "ANS" driver, but needs some more work before heading upstream.
NVMe + SART (apple-ans-nvme/apple-sart, in development/functional): The NVMe hardware in the M1 is quite peculiar: it breaks the spec in multiple ways, requiring patches to the core NVMe support in Linux, and it also is exposed as a platform device instead of PCIe. In addition, it is managed by an ASC, the "ANS", which needs to be brought up before NVMe can work, and that also relies on a companion "SART" driver, which is like a minimal IOMMU. Sven spent a lot of time putting all of the pieces for this together, and NVMe now works well in our downstream kernel branches. This still needs significant clean-up before heading upstream.
DCP (apple-dcp, in development/functional): We've talked about the M1's display controller hardware in the previous Progress Report, so we'll spare the recap here: head back if you want all the gory details. Alyssa Rosenzweig took on the challenge of writing a Linux driver for it, and it already works well! This allows things like resolution switching (including 4K HDMI monitor support) and proper tear-free page flipping to work. This builds on Sven's RTKit and mailbox layers, as the DCP is also an RTKit ASC.
Apple SoCs aren't like others
Throughout this Linux driver writing saga, we have been doing something unusual in the world of embedded ARM systems. On typical SoCs, drivers have intimate knowledge of the underlying hardware, and they hard-code its precise layout: how many registers, how many pins, how things relate to each other, etc. This is effectively a requirement for most SoCs, because hardware tends to vary quite a bit from generation to generation, so drivers always require changes to support newer hardware.
However, Apple is unique in putting emphasis in keeping hardware interfaces compatible across SoC generations – the UART hardware in the M1 dates back to the original iPhone! This means we are in a unique position to be able to try writing drivers that will not only work for the M1, but may work –unchanged– on future chips as well. This is a very exciting opportunity in the ARM64 world. We won't know until Apple releases the M1X/M2, but if we succeed in making enough drivers forwards-compatible to boot Linux on newer chips, that will make things like booting older distro installers possible on newer hardware. That is something people take for granted on x86, but it's usually impossible in the embedded world – and we hope we can change that on these machines.
This does require thinking differently about things. Instead of hard-coding the precise layout of the hardware in the driver, we instead rely on the Device Tree to provide that information: the parts that are "parameters" that change from device to device, without fundamentally changing how they work. For example, on other SoCs, the device power management driver would drive a single device, and provide power management for all on-board devices as a hard-coded list. Our PMGR driver instead is actually instantiated for every device that has to be managed, and controls a single register; the device tree then can be used to represent the dependency relationships between these power domains dynamically. This means that, although the M1X/M2 will certainly have a different number and arrangement of power management registers, as long as each register works the same way, the existing driver will work. The same is true for the GPIO driver (number of pins), CPU frequency driver (number and type of clusters and what frequencies they support), and more.
This approach is unfamiliar to most upstream subsystem maintainers, but we hope they recognize the benefits over time. Who knows, perhaps this will inspire other manufacturers to do it this way!
Road to the Desktop
With these drivers, M1 Macs are actually usable as desktop Linux machines! While there is no GPU acceleration yet, the M1's CPUs are so powerful that a software-rendered desktop is actually faster on them than on e.g. Rockchip ARM64 machines with hardware acceleration.
While there are certainly many rough edges and missing drivers, getting to this point allows development to be self-hosted and developers to eat their own dogfood. Alyssa has been doing just that, using her M1 Mac running her own kernel merges as a daily driver. Follow her Twitter for updates on her setup!
As the dust settles on these Linux drivers, we will start providing an official installer that those adventurous enough can use to try out Asahi Linux with a minimal amount of fuss in the near future. Remember, there are still many missing bits (USB3, TB, camera, GPU, audio, etc.) as well as patchsets a bit too problematic to bundle as-is at this time (WiFi, which needs significant rewrites), so don't expect this to be anywhere near the polished experience that is the goal of our project. That said, we hope this will allow those willing to be on the absolute bleeding edge to get a taste for what running Linux on these machines is like – and, for some, this might be enough for production usage.
Installer updates
As more and more people are wanting to try all of this out, we have updated our alpha installer (which currently only installs m1n1 as a stub OS partition) to better support older macOS versions, handle different recovery versions, and support multiple macOS installs in the same APFS container. As always, if you're a developer and you're interested in trying this out, head to our IRC channel and we'll help you get everything set up. Check out our previous Progress Report if you want to learn more about how the installer works.
Once we have a stable kernel foundation, we will start publishing an "official" installer that we expect will see more wide usage among the adventurous. That version will guide you through resizing your macOS install to make space for Linux, install m1n1 + U-Boot, set up an EFI partition, and optionally install a pre-built distro + its bootloader (initially Arch Linux ARM). On that note, Mark Kettenis has just submitted v2 of the series to add M1 support to upstream U-Boot a few days ago! Keep your eyes peeled for updates :-)
Even more reverse engineering
Hypervisor SMP
As part of reverse engineering the CPU frequency hardware, I found myself needing to run macOS under the m1n1 hypervisor with full SMP support… so I made it happen! The hypervisor can now expose all 8 CPU cores to the guest, and virtualizes the CPU startup hardware. This is not only important for reverse engineering SMP-related features, it also means it now boots almost as fast as on bare metal!
The m1n1 hypervisor just gained full SMP support, with all 8 cores active! The boot time is now practically the same as on bare metal. pic.twitter.com/dd0khoKiBK
— Asahi Linux (@AsahiLinux@treehouse.systems) (@AsahiLinux) September 15, 2021
The hypervisor, now with 8 times the cores
This also makes it even more practical to use for testing Linux; there is very little reason not to run under the hypervisor during most kernel development now. This makes things much easier for anyone without a serial debug cable, as the hypervisor provides a virtual UART over USB, as well as interactive debugging features.
Martin Povišer spent some time reverse engineering the audio hardware in the M1 and wrote a PoC m1n1 driver for the DMA and speaker amp hardware that can play audio through the Mac Mini's embedded speaker. He has now started work on a Linux ASoC driver for this hardware. Audio was a big TODO on our list that none of us had looked at yet, so it is very exciting to see someone take on that challenge! Thank you, Martin!
As a surprise, it turns out the macOS audio driver directly controls some of the M1's generic clock control registers. I'd spent some time working out how they work and mapping out some clock frequencies, so this was already somewhat familiar to me, although I was not expecting us to need a driver for this. It sounds like it may be necessary, so there will probably be an apple-clocksel coming up in the future.
Type-C / USB3 / DisplayPort / Thunderbolt
Sven and I have started looking into what's needed to make the SuperSpeed-related Type C hardware work. This is a big area of research involving multiple drivers (DisplayPort multiplexing, Thunderbolt, Apple Type-C PHY, DWC3 host/gadget, and more) that interact in complex ways, including some which are novel to the Linux kernel and haven't been done on any other SoC yet, but we hope to start moving forward with Linux support for this in the near future. In the meantime, USB2 works fine, as do the Type-A USB3 ports on the Mac Mini.
Everyone knows what the next big step is: the GPU! We'll begin tackling the GPU kernel interface very soon, once a few loose kernel ends are tied and in review. As a reminder, Alyssa has already done a ton of work on the Mesa userspace side (shaders, draw commands, etc.), which works well under macOS with its kernel driver. How long will it take for us to port that work to Linux? Stay tuned!
marcan · 2021-10-06
Licensed under CC BY-SA 4.0 Linux® is the registered trademark of Linus Torvalds in the U.S. and other countries. All other product names, logos, and brands are property of their respective owners.


text:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.robinpowered.react.Intercom" >
</manifest>

redpajama_set_name: RedPajamaGithub


If you have taken debts from a creditor, you cannot avoid frequent collection calls if you have failed to make payments. Collection calls are irritating, and they will never stop till you take action. It is necessary for you to repay the debt under the law. Even if the amount you owe is very small, paying back the loan is important.
Brennan and Clark- how can you stop collection calls from disturbing you?
Brennan and Clark is an esteemed name in debt collection. It has been in operation for 30 years, and it is a trustworthy name in the USA. The experts collect pending debts on behalf of their clients. Once realized, these debts are given back to their clients. You can enter into an agreement with the creditor with repayment terms and conditions. They should be listed in writing so that you do not face confusion and ambiguity.
Many people believe that if they owe a debt, they can stop collection calls by changing their address or phone number. This is not true. Debt collection agencies have an extensive database that helps them to locate and call the person. Avoiding the call will not help you in any way to stop collection agencies from calling you.
The first thing you should do is confirm the loan is yours. There are cases where fraudulent companies call up innocent people in a bid to extract money from them. Experts here say that when you are getting collection calls, you must verify the name, address and the amount of debt pending. This is the first thing you must do in order to avoid rip-offs. Take time to verify the call or contact the experts of a good collection agency for advice on the subject.
When you wish to stop collection calls, negotiating with the creditor is the key. Both of you must agree. The terms should be carefully read and understood by you. Once a settlement has been entered into and signed, the debts you owe can be repaid with the passage of time.
In case, you need expert guidance and help, consult experts from debt collection agencies. They will guide and counsel you on how you can stop collection calls. These companies also help you to frame the terms and conditions of the settlement, so you do not face hassles in the future.
Brennan and Clark professionals say when you are looking for ways to stop collection calls, keep the above tips in mind. They are simple for you to incorporate. There are ways via which you and the creditor can come to an agreement. Every creditor is open to discussion when it comes to the repayment of debts. They want their money back and so will always meet you for an agreement that suits both when you wish to reduce debts and stop collection calls!


England (/ˈɪŋɡlənd/) is a country that is part of the United Kingdom. It shares land borders with Scotland to the north and Wales to the west. The Irish Sea lies northwest of England and the Celtic Sea lies to the southwest. England is separated from continental Europe by the North Sea to the east and the English Channel to the south. The country covers much of the central and southern part of the island of Great Britain, which lies in the North Atlantic; and includes over 100 smaller islands such as the Isles of Scilly, and the Isle of Wight.
England's terrain mostly comprises low hills and plains, especially in central and southern England. However, there are uplands in the north (for example, the mountainous Lake District, and the Pennines) and in the south west (for example, Dartmoor and the Cotswolds). The capital is London, which is the largest metropolitan area in both the United Kingdom and the European Union. England's population of over 53 million comprises 84% of the population of the United Kingdom, largely concentrated around London, the South East, and conurbations in the Midlands, the North West, the North East, and Yorkshire, which each developed as major industrial regions during the 19th century.
The Kingdom of England—which after 1535 included Wales—ceased being a separate sovereign state on 1 May 1707, when the Acts of Union put into effect the terms agreed in the Treaty of Union the previous year, resulting in a political union with the Kingdom of Scotland to create the Kingdom of Great Britain. In 1801, Great Britain was united with the Kingdom of Ireland through another Act of Union to become the United Kingdom of Great Britain and Ireland. In 1922 the Irish Free State seceded from the United Kingdom, leading to the latter being renamed the United Kingdom of Great Britain and Northern Ireland.


text:
FBI captures one of its most wanted
Posted: Apr 23, 2013 11:07 PM EST | Updated: Nov 5, 2014 10:50 PM EST
WASHINGTON, D.C. — One of the FBI's most wanted criminals is locked up.
Purdue graduate Eric Toth appeared in federal court Tuesday.
The FBI arrested him Saturday in Nicaragua. They say a tip led to his capture.
"As the result of the teamwork and cooperation of all involved, including the public, he will now be brought to justice for his crimes," said Valerie Parlave of the FBI.
The former teacher faces child porn charges.
He disappeared five years ago after police found disturbing images on his school-issued camera.

redpajama_set_name: RedPajamaCommonCrawl


text:
HIV/AIDS and Aging Awareness
ACRIA Images
Educational Toolkit
IPEARAA
The AIDS Institute and AIDS Alliance for Women, Infants, Children, Youth and Families produced a video to address HIV stigma among older women for National HIV/AIDS and Aging Awareness Day.
The following images are available for use and were developed in collaboration with CME Outfitters in recognition of NHAAD.
HIV/AIDS HAS NO AGE
Worldwide, an estimated 3.6 million people aged 50+ are living with HIV.
The prevalence of HIV among older adults is reaching staggering rates. About 1 in 4 adults in the United States who are living with HIV infection are aged 50 or older. 18% of new HIV diagnoses occur among those aged 50 and older.
With advanced treatment options, HIV positive individuals are living longer lives. However, the interactions between aging and degeneration caused by HIV have become a public health concern that needs to generate appropriate awareness and education.
Efforts to expand HIV prevention messages for older adults should also include information and resources about linking newly diagnosed individuals to care while also advocating to ensure these individuals have appropriate access to care and treatment.
With your help, we can work to create awareness in our local communities!
Find out what you can do to get involved.
Aging Healthy Newsletter
Aging Healthy Journal
© 2015 by The AIDS Institute
National Policy Office
1627 Eye Street NW
Program and Administrative Office
17 Davis Boulevard


June's poems have been published in magazines, including Magma. She was a runner-up (twice) in the Troubadour Annual Poetry Competition. In 2010, she was one of four people commissioned by the Whitechapel Art Gallery, to write poems inspired by the work of Alice Neal, the American portrait painter. Currently, she is a member of The Group, based at The Poetry Society in Covent Garden.


Leo Cooney, MD, professor of geriatric medicine at Yale School of Medicine, will discuss "How to Receive the Care you Wish" at the Bigelow Center for Senior Activities, 100 Mona Terrace, at 10 a.m. on Wednesday, Oct. 3.
The presentation is free and open to all Connecticut residents.
Registration is required. Call 888-357-2396 or register online at www.bridgeporthospital.org/events.
Participants will learn how to stay in charge of their health care even when they may not be able to speak for themselves. Yale New Haven Health experts will walk participants through the decision making process and explain how advanced care planning can be one of life's greatest gifts. This thought-provoking session will cover what kind of care, and at what intensity, you may want for yourself — and how to let others know your wishes. Attendees will learn about healthcare representatives, healthcare proxy, goals of care, living wills and how to start the conversation with family and healthcare providers.


text:
Q: User Defined Indirect Function with COUNTIFS I am trying to create a UDF to replace the INDIRECT function for use in the COUNTIFS function to allow dynamic ranges.
Goal:
Current:
=countifs(indirect([cell reference to named range],[criteria1]...)

I am trying to achieve:
=countifs(INDIRECTVBA([cell reference to named range],[criteria1...)

The function returns #VALUE at the moment.
Here is my VBA:
Public Function INDIRECTVBA(ref_text As String)
    INDIRECTVBA = Range(ref_text)
End Function

The ref_text argument would be a reference to a cell in which a VLOOKUP is dynamically listing a named range based on user selection elsewhere.
My first guess is a data type mismatch but I am out of ideas.
Any help is appreciated!
Thanks,
Jordan

A: You're returning a Variant value instead of a Range.
This would give an error because CountIf is expecting a Range in its first argument and not a Variant value.
If you want to return a range add As Range to your function declaration and use a Set statement.
Public Function INDIRECTVBA(ref_text As String) As Range
    Set INDIRECTVBA = Range(ref_text)
End Function

Because you omit Set the compiler is interpreting it as a Let statement. Without As Range in the function declaration, it is defaulting to As Variant. So the function is retrieving the value within the Range instead of returning the Range itself (Range objects give their Range.Value property by default when in Let statements).
I'm not too educated in CS, so this answer might be inaccurate. I genuinely appreciate learning more when people correct me.

redpajama_set_name: RedPajamaStackExchange


"We both love the eighties. The 1880s." Yet when fashion designer Anthony Malat and photographer Jamie Isaia first rented this floor-through in a small aluminum-sided house in Williamsburg, the style was more like the mid-seventies. Wall-to-wall carpeting and lots of fake-wood paneling prevailed. They drank a "case of Red Bull" and got to work ripping everything out, says Malat, whose Sinner Saint Menswear reworks vintage suits into new pieces for the likes of musician Billy Corgan. Then they applied their finely honed skills as scavengers to fill the place again: with furniture repurposed from the street and from Isaia's grandmother; with the inner skeleton of a grand piano, which they affixed to the wall; with enough taxidermy to make Freemans restaurant jealous; with a bookcase Malat made from wood flooring from an old torpedo factory.
We thought our first home together would be more purely Victorian, but as things fell together, we saw a closer resemblance to Depression-era stylings.
Jamie picked out the colors, which I love; they remind me of that time when folks would gather around the radio in the evenings. I like that feeling of comfort.
The office interiors of the film Downfall were a big influence on our color palette. In general, it was a mixture of Flowers in the Attic, Pretty Baby, The City of Lost Children, and Spaceballs. If we could live in a novel, maybe we would try Anna Karenina or The Count of Monte Cristo, but I think the opulence would bug us.


[...] this 91-year-old Idahoan who goes by the name "Grandma Louise." [...] knew that her doctor was Muslim, and she heard all the terrible things that Donald Trump and his bigoted supporters were saying about Muslims, so she decided to take action. Some crocheting action.
We can't right every single wrong. We can't fix every single problem. We can't cure every illness. But we can do what we can, whether that be lending a comforting word, speaking up in someone's defense, or just whipping out crochet hooks and giving someone a stuffed animal.
And she obviously knows so much about Muslims, because one of the animals she is gifting him with is a pig. Ha! If she knew anything about Islam, she would know that in a Muslim society, she would be crocheting a burka to celebrate her 9-year-old great-grand-daughter's upcoming marriage to her 43-year-old grandson.
Now we can add to this picture an even more senior crowd that relies upon non-Whites for medical services because their own grandchildren (assuming they have any) can barely perform simple arithmetic, let alone graduate from medical school and become doctors. Ready for some irony? I work in the healthcare industry, and the #1 complaint I hear from elderly patients is that they cannot understand what their foreign-born doctors are saying. It is all I can do to keep from responding, "Well, maybe you should have spent more time teaching Johnny and Sally science and medicine, and less time teaching them humanist, liberal-arts garbage at school, and burdening them with Semitic mythology and fairy-tale moralizing at church."
Or "there are more white rapists"
They are reading the signs correctly. That is exactly what the Leftists and MultiKultists want.
", "Well, maybe you should have spent more time teaching Johnny and Sally science and medicine, and less time teaching them humanist, liberal-arts garbage at school, and burdening them with Semitic mythology and fairy-tale moralizing at church."
I hope you don't mind sharing. Have you actually been able to deliver your speech? The best I can manage is to think it loudly, while staring blankly with an insincere smile on my face.


text:
<!DOCTYPE html>

  <meta charset="utf-8">
  <base data-ice="baseUrl" href="../../">
  <title data-ice="title">Server | API Document</title>
  <link type="text/css" rel="stylesheet" href="css/style.css">
  <link type="text/css" rel="stylesheet" href="css/prettify-tomorrow.css">

  Home

  Reference
  Source
  Test
  Repository

    <input class="search-input">

CRouter

CServer

EHapiServer

EReply

ERequest

api_controllers
CBucketController

CEventController

CEventController

authentication
CHoistAuthentication

Fregister

import Server from 'api.hoi.io/lib/server.js'

  public
  class

  | source

Server

a wrapper around the HapiServer

Constructor Summary

Public Constructor

      public

           constructor

create a new instance

Method Summary

Public Methods

      public

           start(): *

start the server and configure it

      public

           stop(): *

stop the server

Public Constructors

    public

    constructor

      source

create a new instance

Public Methods

    public

    start(): *

      source

start the server and configure it

Return:

        *

    public

    stop(): *

      source

stop the server

Return:

        *

  Generated by ESDoc(0.4.6)


As the La Liga season rolls on, we also project how the teams will finish at the end of the campaign. For our latest season projections, scroll to the bottom of this page.
These La Liga soccer predictions should be used for entertainment purposes only. However, if you do wish to place bets, then please read the sportsbook information page at: Sportsbook Reviews and Ratings.
Below is our La Liga table projections that will be updated often as the season progresses. This projects out how each La Liga team will do in regards to the final season table. It provides probabilities for wins, losses, ties, points, and more.
Last simulation was done on 4/8/2019.
The top four in the La liga table at the end of the 2018-2019 season will be awarded seeds into the Group Stage of the 2019-2020 Champions League. Similiarly, the fifth and sixth placed teams will earn a berth to the Group Stage of Europa League for the following season.


text:
Q: How can I record two simultaneous Microsoft Teams meetings, on the same computer, without audio cross interference? In my new role I must simultaneously attend two Teams meetings, but  I can absolutely choose to stay silent and not speak. I plan to attend one meeting on Teams desktop App program, and the other on Microsoft Edge — both on the same laptop.
I want to avoid using another device (e.g. my phone or desktop) if possible. The issue is audio cross interference between the two meetings.
I've been using Icecream Screen Recorder to "Capture audio." But won't this fail?
If I simply click "Capture audio" —  but people from the 2 different Teams meetings are simultaneously speaking — then their voices will cross interfere! Icecream will capture both simultaneous voices in the same recording, but won't the recording sound completely garbled and jumbled? Afterwards I must be able to listen to the speech in each meeting audibly from my recordings!
If there's no other way, then I should open one meeting on my laptop, and the other on my phone or desktop. Then I should install Icecream Recorder on each device, and record separately. Will this work?


text:
Antoine Drouot (Nancy, Lorena, 11 de gener de 1774 - 24 de març de 1847) fou un militar francès.

Fill d'un forner, des d'infant es distingí per la seva afició als estudis matemàtics, i ingressà en el cos d'enginyers amb el grau de subtinent en sortir, el 1793, de l'escola d'Aplicació de Metz. Prengué part en les campanyes del Rin i d'Itàlia fins al 1800, assistint a les cèlebres batalles de Fleurus i Hohenlinden, i fent-se notar per la seva perícia i valor en la retirada de Trebia. El 1804 va rebre la creu de la Legió d'Honor, i passà a prestar els seus serveis a l'armada, assistint a la batalla de Trafalgar amb el grau de major.

El 1808 va combatre a Espanya i l'any següent a Alemanya, contribuint en la batalla de Wagram a decidir la sort de la jornada dirigint personalment una part de les bateries de la guàrdia. En la retirada de Rússia, es distingí d'una manera especial per la seva serenitat i calma, que li valgueren el dictat de Le sage de la Grande Armée i l'ascens a general. En acabar aquella guerra, Napoleó el nomenà ajudant seu, i sempre que en una batalla resolgué agrupar l'artilleria en grans masses (Lützen, Wachau, Craonne), fou Drouot l'encarregat de dirigir-les. A Hanau salvà, es pot dir així, a l'exèrcit per emprar de manera genial aquesta arma.

Caigut l'emperador, el segui a l'illa Elba, i quan aquell li exposà el seu projecte de sortir de l'illa, s'esforçà amb l'esforç més gran en dissuadir-lo de portar a fi aquesta empresa, el fracàs del qual endevinava. En la batalla de Waterloo, seguint el consell de Drouot, Napoleó endarrerí l'atac fins a les dues de la tarda, perquè estovat el terra per la pluja, dificultava els moviments de l'artilleria. Més tard el mateix Drouot es lamentà moltes vegades que, per haver fet cas del seu consell, s'hagués perdut la batalla, tret en veritat poc comú i que prova la noblesa del seu caràcter. Absolt pel consell de guerra que jutjà la conducta dels generals que havien seguit a Napoleó, es retirà al seu poble natal, on acabà els seus dies tranquil·lament, tenint cura de l'educació, que se li havia confiat, del príncep Lluís Napoleó, més tard emperador dels francesos.

Lluís Felip li havia concedit la gran creu de la Legió d'Honor, i Nancy va honorar la memòria del seu il·lustre fill elevant-li el 1856 un senzill monument. Napoleó, que tenia en gran estima les seves qualitats, soli dir d'ell que el considerava amb capacitat per comandar un exèrcit de 100.000 homes, i en una altra ocasió digué:Entre els seus escrits, que veieren la llum pública a Nancy (1824-1831, hi figuren els citats a continuació:
 Informe sobre una memòria de M. Callière titulada;
 De les reserves de blat per als préstecs de l'Agricultura a l'interès més moderat;
 Informe sobre una arada;
 Informe sobre les forces motrius que han de ser aplicades à les arades;
 Informe sobre el curs del cultiu i naturalització de vegetals de M. A. Thanin;
 Informe sobre una obra de M. Ternaux el major, titulada: Noticia sobre la millora dels ramats de xais a França;
 Informe sobre la balança de M. Carez, etc.

Bibliografia

 Enciclopèdia Espasa Volum núm. 18, 2a part, pàg. 2252 ()

Militars francesos
Persones de Nancy
Gran Creu de la Legió d'Honor
Morts a Nancy

redpajama_set_name: RedPajamaWikipedia


text:
Meituan, anciennement entre 2015 et 2020 Meituan-Dianping (en chinois 美团网), est une entreprise chinoise spécialisée dans la vente en ligne. Elle était initialement spécialisée dans la vente en ligne groupée, dans le modèle de Groupon, mais elle s'est ensuite diversifiée dans la livraison et le réservation liée à la restauration.

Histoire
Meituan est fondée en 2010 par Wang Xing.

En , Meituan et Dianping fusionnent leurs activités. En , Meituan-Dianping lève  de dollars lors d'une augmentation de capital, valorisant l'entreprise à  de dollars.

En , Meituan-Dianping annonce l'acquisition de Mobike, un réseau de vélo en libre service, pour  de dollars.

En , Meituan-Dianping est partiellement introduit en bourse pour  de dollars. Cette introduction en bourse valorise l'entreprise à une capitalisation de  de dollars.

Pour 2018, sa perte d'exploitation a atteint l'équivalent de  de dollars américains.

En avril 2021, Meituan annonce avoir effectué une levée de fonds en bourse de 10 milliards de dollars, la valorisant à 220 milliards de dollars.

En décembre 2022, Tencent annonce la vente de sa participation dans Meituan, pour près de 23 milliards de dollars.

Notes et références

Annexes

Articles connexes
 Alibaba.com, site du groupe spécialisé dans le B2B
 Taobao, site du groupe pour le public chinois
 Joom, site du groupe international d'entreprises de commerce électronique

Lien externe

Entreprise Internet ayant son siège en Chine
Entreprise ayant son siège à Pékin
Entreprise fondée en 2010


Johnson, Heidepriem & Abdallah, LLP, in Sioux Falls, is recognized as South Dakota's premier litigation firm. Practice areas include Motor Vehicle Accidents, Drunk Driving Accidents, Personal Injury, Wrongful Death Cases, Product Liability, Defective Drugs, Premises Liability, Medical Malpractice, and more.
Our attorneys have the knowledge to provide sound legal advice and the courtroom skills to obtain favorable case results. Practice areas: Fires / Explosions, Insurance Claims - Bad Faith, Nursing Home Litigation, Pedestrian Accidents, Personal Injury, Premises Liability, Product Liability, Spinal Cord Injuries, Trucking Accidents, Workplace Injuries, Wrongful Death, and more.


r.regression.multi - Calculates multiple linear regression from raster maps.
ASCII file for storing regression coefficients (output to screen if file not specified).
r.regression.multi is designed for large datasets that can not be processed in R. A p value is therefore not provided, because even very small, meaningless effects will become significant with a large number of cells. Instead it is recommended to judge by the estimator b, the amount of variance explained (R squared for a given variable) and the gain in AIC (AIC without a given variable minus AIC global must be positive) whether the inclusion of a given explaining variable in the model is justified.
The b coefficients (b0 is offset), R squared or coefficient of determination (Rsq) and F are identical to the ones obtained from R-stats's lm() function and R-stats's anova() function. The AIC value is identical to the one obtained from R-stats's stepAIC() function (in case of backwards stepping, identical to the Start value). The AIC value corrected for the number of explaining variables and the BIC (Bayesian Information Criterion) value follow the logic of AIC.
R squared for each explaining variable represents the additional amount of explained variance when including this variable compared to when excluding this variable, that is, this amount of variance is explained by the current explaining variable after taking into consideration all the other explaining variables.
The F score for each explaining variable allows testing if the inclusion of this variable significantly increases the explaining power of the model, relative to the global model excluding this explaining variable. That means that the F value for a given explaining variable is only identical to the F value of the R-function summary.aov if the given explaining variable is the last variable in the R-formula. While R successively includes one variable after another in the order specified by the formula and at each step calculates the F value expressing the gain by including the current variable in addition to the previous variables, r.regression.multi calculates the F-value expressing the gain by including the current variable in addition to all other variables, not only the previous variables.
The AIC value is identical to the one obtained from the R-function stepAIC() when excluding this variable from the full model. The AIC value corrected for the number of explaining variables and the BIC value (Bayesian Information Criterion) value follow the logic of AIC. BIC is identical to the R-function stepAIC with k = log(n). AICc is not available through the R-function stepAIC.


Companies Love Us! Why? Because at WebsiteService4All we create stunning applications and integrations that help businesses achieve their online goals!
In business you need to be efficient, productive, and always on the top of your game. That's where we come in. We are the web developer San Diego businesses turn to for custom programming, integrations, API work, code repair, and much more. Clients like Barona Casino (Players Club), Warehouse Solutions (A Fortune 500 Company), Trotac Marine, and others use our web development to drive their online businesses.
When Barona Casino needed programming for their players club they called us. We created the back-end and interface for their club including and integration allowing players to purchase and transfer gaming funds from one area of their system to another.
When Trotac Marine needed integration between their website and their suppliers we were there for them. We created a powerful solution that allowed easy management of their product sets.
VisualDataMedia needed an In-House Support System and Intranet enabling them to allow certain types of users to access certain information. We created the system to meet their needs.
EngagePRSM needed an API so their vendors could publish and sell content for use on their website remotely. We coded a specialized system to accommodate all the features they needed.
It's not uncommon for a business not to know everything they need. That's why we take the time to review your specific situation and goals, and make recommendations. We have years of experience in development, workflow efficiency, process management, and we know and recommend ways to increase your efficiency and meet your business objectives. We are the web developers San Diego businesses turn to for help.
Need a specialty application? Looking to increase your system efficiency? Need to integrate your online application with another? Contact Us Today.


how do I delclare a column as null or not null in denodo ? is this even possible ? If it is what is the syntax ?
Is it possible to automate tests built for the Denodo Testing Tool in Jenkins?
How to recover Invalidated cache?
I asked a question earlier about creating physical tables in denodo and was told that materialized tables is the answer ! I want to know how you would implement the code below as a materialized table in denodo as currently it isn't working !


In an investment account, the bank concentrates the money from their customers by offering an interest rate as attractive as possible to successfully compete with other banks. With that money makes assets and provides loans (mortgages, credit cards) to their clients why they are charged interest and fees which makes his profit and pays the agreed return to savers.
In a mutual fund, the financial institution acquires notes and bonds of companies and governments (Debt Funds) and shares of companies (Equity Fund) among other savings. The total amount of the investment is divided into equal parts called shares being these that are available to investor's customers. In this case, the performance of the assets making up the fund is what determines the fund, taking by financial institutions both experts analyzing the best options for integrating the fund thus seeking to give their customers investors better returns than the competition.
In case you have decided to save in a bank, you could have opened a savings account monthly fixed term with a yield of 4.3% annually, which you deposit your total money.


HOUSTON (AP) James Harden is on a roll and it's helping the Houston Rockets get on track after their terrible start to the season.
The Rockets won just one of their first six games this season and were 11-14 after a three-game skid in early December. Since then, powered by Harden's dominance, Houston has lost just once to improve to 18-15 and move a season-high three games above .500.
''We had some bad bounces which got them a couple of extra possessions which got them some open 3s,'' George said.
Harden became the first player to score 40 or more points on Christmas since Kevin Durant had 44 for the Thunder in 2010. Harden's latest big game came as the Rockets played without Chris Paul, who missed his second straight game with a strained left hamstring. The 9-time All-Star is out for at least the next two weeks with the injury suffered Thursday night.
''We've got a lot of guys playing at a high level right now,'' coach Mike D'Antoni said. ''So many guys contributed (Tuesday).
Thunder: Westbrook received a technical in the second quarter for yelling at an official when he thought he was fouled on a 3-point attempt. ... Steven Adams had 17 points and seven rebounds. ... The Thunder made nine of 30 3-pointers.
Rockets: Rivers scored 10 in his Houston debut. ... James Ennis missed his seventh straight game with a strained right hamstring. ... Gordon had 17 points.


text:
The high risk of suicide among veterans
Shannon Vavra
Male veterans have a 19% greater risk of suicide than their civilian counterparts, according to a VA report released this month that provides a groundbreaking look at veterans' suicide rates compared to civilians. The rate for male veterans age 18-29 has been increasing faster than any other age group among men and women since 2006.
Data: 'Suicide Among Veterans and Other Americans, 2001–2014'; Chart: Lazaro Gamio/Axios
For help: Veterans and loved ones can "call the free and confidential Veterans Crisis Line at 1-800-273-8255 and Press 1, chat online, or send a text message to 838255," per the VA. More options via the National Suicide Prevention Lifeline.
The crisis: An average of 20 veterans die every day, and of those, 14 may have received no care from the Veterans Health Administration. What that means, as VA Secretary David Shulkin told the Senate Veterans' Affairs Committee last week, is that "we need to find a way to provide care or assistance to all of these individuals." He called suicide among veterans a "crisis" in his opening statement.
The overall suicide rate wasn't as high for female veterans — but it was two and a half times higher than civilian women after adjusting for age, according to the report.
For female veterans, suicide rates are highest in the younger years. For male veterans, suicide rates are highest in younger and older years.
Overall, veterans have a risk of dying by suicide 22% higher than the U.S. civilian adult population, per 2014 data.
What the VA is doing:
The VA rolled out its "REACH VET" (Recovery Engagement and Coordination for Health Veterans Enhanced Treatment) program between November 2016 and February 2017, which uses a predictive model to analyze veterans' health records to identify those most at risk for suicide. The idea is that identification can lead to further engagement with primary care or mental health providers.
Earlier this year, the VA announced it would hire 1,000 more mental health employees, which Shulkin said is on track to be done by December. They've hired 649 additional mental health employees as of this month.
Since 2015, the VA has contracted with an independent evaluator to assess VA mental health and suicide prevention programs. A report is due at the end of this month.


text:
Iraq Council of Representatives Graphic May 6, 2016
By Emily Anagnostos
Iraq's "rump" Council of Representatives (CoR) formed on April 14, 2016 when some members of Parliament staged a sit in after months of stalled reforms. The rump CoR, at its zenith, was supported by multiple prominent political parties, including the Sadrist al-Ahrar Bloc and the Badr Organization. These parties largely walked out of the rump CoR by April 20. The rump CoR could not reach a quorum as a result and failed to gain recognition as a legal entity. Most of its members have refocused their efforts on forming a new opposition bloc, the "Reform Front," first reported on April 27. The Reform Front claims to have at least 98 members, consisting of 42 pro-Maliki Dawa Party members, all of the members from Iyad Allawi's Wataniya Bloc, and an unverifiable number of members who defected from their parties. If the claim is accurate, then the Reform Front will become the largest bloc in the CoR, surpassing the State of Law Alliance which stands to lose substantial numbers to the Front.
The Reform Front is likely steered by former Prime Minister Nouri al-Maliki, though several members have denied his involvement. Maliki has contested Abadi's leadership of the Dawa Party since he lost the premiership in 2014 amidst growing domestic and international pressure for political change. The recent resignation of Hassan al-Sinid on April 28, the placeholder for Maliki's seat in the CoR during his tenure as Vice President, could indicate that Maliki looks to resume his seat in the CoR. [Note: In our May 6 post, we said that holding a seat in the CoR was a prerequisite for becoming Prime Minister. It is not.] Maliki has denied the rumors of his return.
The largest bloc in Iraq's parliament constitutionally has the right to select the Prime Minister and form the Council of Ministers after general elections or after a no-confidence vote in the Prime Minister. Maliki formed a government in 2010 even though he did not win the elections outright by creating a legal challenge about how to define the "largest bloc." The Front's emergence could facilitate Maliki's return as prime minister if the parliament ousts Abadi.
The withdrawal of confidence from Abadi is also not likely imminent over the next few weeks barring an unexpected event that creates a further state of emergency. Many of Iraq's political leaders are engaged in intense behind the scenes meetings to help break the deadlock without a vote of no-confidence. There is no clear coalition emerging within the CoR that can achieve an absolute majority of 165 members to vote no-confidence or select a successor. Anti-Maliki sentiment remains strong among elite politicians, undercutting the likelihood that he will be able to generate sufficient support for a no-confidence vote and government formation himself. The Reform Front's tenuous position as a coalition of convenience may collapse. Both Maliki and Allawi seek power, and they cannot both have it.
Maliki, therefore, is most likely to try to ride the political wave by positioning himself as a potential unifier who can bridge the gap between the Reform Front and other blocs – a gap that he has helped create and maintain. He issued a statement on May 6 calling for all CoR blocs to reconvene a session to find a solution to the political crisis. He is likely to try to rally Abadi's Dawa Party supporters to his side along with other consensus-minded political blocs while aligning temporarily with Allawi, his rival for the premiership in 2010, with the ultimate intent of acquiring the 165 votes necessary to achieve an absolute majority in the CoR. It is not even clear whether the CoR will even be able to resume sessions soon. It is next scheduled to meet on May 10, and it can only make decisions if a quorum of 165 members is reached. The 34 members of the Sadrist al-Ahrar Bloc, however, withdrew from the CoR on April 30 and at least 60 members of the Kurdistan Alliance agreed on May 6 to not return to the CoR. The absence of as many as 94 members will make it more difficult for Speaker Salim al-Juburi to achieve quorum. The Kurds have likely presented a set of political demands regarding the cabinet reshuffle and the size of their representation in government to other Shi'a parties as a condition for their return and may return to the CoR before the Sadrists if the other blocs agree to their demands. Other political blocs may also boycott the CoR, less ostentatiously, as the cabinet reshuffle drags on. Political impasse will therefore likely persist.
This graphic is an approximate depiction of the current state of the Council of Representatives. It shows the number and party affiliation of CoR members who have boycotted future parliamentary sessions. It also shows the number and party affiliation of CoR members whom ISW assesses may be part of the Reform Front based on the Reform Front's unconfirmed claim that it is at least 98-members strong. The graphic demonstrates the tumultuous current state of the CoR and the difficulty for a session to achieve quorum.
Labels: ABADI, CoR, Etihad, Iraq, ISCI, maliki, sadr
Fallujah Control of Terrain Map: May 31, 2016
Russian Airstrikes in Syria: April 30 - May 26, 2016
Iraq Situation Report: May 11-24, 2016
Iraq Control of Terrain Map: May 23, 2016
Iraq Awaits Court Ruling on Legitimacy of Parliame...
Kurdish Objectives in Iraq's Political Crisis
ISIS's Explosive Attacks in the Greater Baghdad Ar...
Iraq Situation Report: April 26 - May 10, 2016
Iraq Council of Representatives Graphic: May 9, 2016
Sadr Attempts a De-facto Coup in Iraq


Club records were under serious threat in the 2012 club hill climb championship as Kyle and Jess Watts each went within 1 second of the men's and ladies club records for the course.
Fantastic weather conditions - sunny, warm, and a light westerly breeze - lead to a string of fast times being set. Second rider to start, Michael Jones, recorded a scorching time of 2:42.5 to set a tough mark for the following riders. Adam Hogarth was the early leader in the club championship, dipping under 3 minutes and holding that position for 15 minutes until Tim Wilcock crossed the line in 2:53.1. Kyle, starting last, finished just 0.8 seconds slower than the club record with 2:38.8, the fastest time seen on the hill for many years. Ritchie Case was fastest Veteran.
The Ladies competition produced an even closer miss as Jess Watts finished just 0.1 second off Elaine Dey's record which has stood since 1990, with Karen Colleran 2nd.


text:
Mulerider Mascot "Maye and Molly" Conclude Ride Across Hot Springs & Little Rock
Shane Haarmeyer November 15, 2013 News 27 Views
Megan Maye, Southern Arkansas University's Mulerider, and her esteemed mule, Molly Ann, are concluding their road trip that has gained state-wide attention across Arkansas in celebration of SAU's record-setting enrollment this fall. Maye is a Mena graduate and the daughter of Vickie Maye and Brian Maye.
Maye, a senior at SAU's College of Business, was ready to ride out of her senior year with a bang! She and Molly Ann hit Hot Springs and Little Rock on November 13 and 14. Running alongside the Mulerider was the award-winning video production crew at SAU, who will be filming the mascot at some of the most beautiful and recognizable locations in all of Arkansas.
SAU has one of the most unique mascots in the United States, and the Mulerider's tour of Arkansas is representative of SAU's broadening reach across the Natural State. In fact, SAU students represent 64 out of the state's 75 counties.
SAU was the only University south of Little Rock to have an increased enrollment this fall. In fact, SAU attracted its highest number of beginning freshman and had a record enrollment of 3,404 for the fall. The campus' "Complete College Experience" campaign also garnered a record number of students living on campus this fall.
This is not the first ride out of Magnolia for the Mulerider to commemorate the spread of Mulerider pride. Maye and Molly Ann recently surprised Texarkana residents as the Mulerider galloped across their city, even stopping to place an order at a Starbucks drive through window. The buzz around the Texarkana trip was such a success that the SAU crew started immediately planning the Arkansas tour.
"It is exciting to see the attention that the Mulerider tours have generated," said SAU President Dr. David Rankin. "An important part of our University history, the Mulerider epitomizes the determination and success our students have achieved with a degree from Southern Arkansas University. We are all extremely pleased with a record-setting fall semester and a broadening of the reach of the University across the State and much beyond."
The residents of Texarkana were excited to not only participate in their city's visit from the Mulerider, but also snap their own photos and videos and share them online. The SAU crew garnered the same responses during their travels to Hot Springs and Little Rock.
"The friendly people of Texarkana had no advanced notice of our recent visit with the Mulerider, which allowed us to capture some funny video," said Aaron Street, SAU's assistant dean for integrated marketing. "But we want to get the people of Hot Springs and Little Rock more involved. We are even hosting a social media contest with an iPad as the prize in which all people have to do is snap a photo of our Mulerider on the road and share it with the '#ISpyMolly' hashtag."
Megan Maye Mena Arkansas News 2013-11-15
Shane Haarmeyer
Previous The Pulse Goes Back to School
Next Another Step Forward to ARCO's Downtown Revitalization Vision – Chameleon Arts to Open Soon