from mpython import onboard_als
import machine
from mpython import onboard_oled


_E6_8E_A5_E8_BF_91_E8_B7_9D_E7_A6_BB = 0
while True:
    _E6_8E_A5_E8_BF_91_E8_B7_9D_E7_A6_BB = int(onboard_als.ps_nl())
    print(_E6_8E_A5_E8_BF_91_E8_B7_9D_E7_A6_BB)
    onboard_oled.scroll(str(_E6_8E_A5_E8_BF_91_E8_B7_9D_E7_A6_BB))
