macOS에서 실행되는 RDP서버 구현체 입니다. 왜 이런 것을 만드냐고요? 그러게 말입니다... https://github.com/Perlmint/ARISU
Perlmint
@perlmint@hackers.pub · 68 following · 55 followers
크로스 플랫폼 빌드 고치는 노동자
사담/잡담은 @meperlmint 에서
Github
- @perlmint
Bluesky
- bsky.perlmint.dev
단축키 자동 맵핑을 꺼야 그래도 쓸만할 것 같은데....
@perlmint 쓸모 있는 거 아닌가요? ㄷㄷ
@hongminhee洪 民憙 (Hong Minhee) 아 대체품이 없는 쓸모 있는 것이라는 말이었습니다 ㅎ... 이건 대체품이 여럿 있기도 하니까요.
이것 말고 쓸모 있는 것을 만들어야 하는데...
macOS에서 실행되는 RDP서버 구현체 입니다. 왜 이런 것을 만드냐고요? 그러게 말입니다... https://github.com/Perlmint/ARISU
제가 지난 15년 정도 그렇게 살다가 결국 VS Code에 정착했답니다. 온갖 랭귀지 서버 세팅하는 게 너무나 귀찮은 나머지…
@hongminhee洪 民憙 (Hong Minhee) 저는 에디터 자주 바꿔온 편인데요. 사실 개발에서 코드를 조작하는 시간의 비중은 크지않고, 코드를 조작할때 생산성에 영향을 크게 주는건 에디터 기능이 아닌 인텔리센스라고 생각해서입니다. 즉 lsp 만세?
해석: Copliot은 주말에는 2차 인증을 사용할 수 없게 만들어 로그인을 할 수 없도록하는 코드를 제안했다.
C# 파일을 dotnet run app.cs로 직접 실행하는 방법
------------------------------
- *.NET 10 Preview 4* 부터는, 이제 단일 C# 파일을 dotnet run app.cs
로 바로 실행할 수 있는 기능이 추가되어, *프로젝트 파일 없이도* C# 코드 실행이 가능해짐
- *파일 기반 앱(file-based apps)* 덕분에, Python이나 JavaScript처럼 간단한 스크립트 실행, 테스트, 아이디어 실험이 한층 쉬워짐
- Nu…
------------------------------
https://news.hada.io/topic?id=21190&utm_source=googlechat&utm_medium=bot&utm_campaign=1834
집에서 식물 기르려고 워터펌프와 식물등을 제어하는 회로를 만들어 쓰다가, 결국에는 중국산 IOT멀티탭으로 전원 공급/차단 하는 것으로 갈아타버렸다. 직접 만드는게 노력은 꽤 드는데 커스터마이징 할 요소도 딱히 없고, 별로 재미도 없고...
@hollo @leetekwoo 제가 알고 있기로도 아직은 x86계열이 OS들의 지원이 가장 잘 되고, arm계열도 많이 지원하지만, 많은 부분의 하드웨어가 독점적이기도 한 애플 실리콘 맥(M시리즈)은 문제가 있습니다.
애플 실리콘 맥미니는 기본 가격이 애플답게 높은 편임에도 성능, 전력 소모면에서 장점이 크지만, 앞서 말한 부분의 제약을 감수 해야 합니다. 그래서 그냥 macOS를 그대로 쓰는 편이 많은걸로 압니다. 인텔 맥은 성능도 가격에 비해 별로 추천 할 만하지 못 하다고 생각하구요.
이야기 하신 목적을 주로 생각하면, 아직은 x86계열 CPU가 장착된 장비가 쉽고 저렴한 선택일 것이라고 생각합니다. 불과 몇년 전만 해도 rpi4(arm64)도 리눅스에서 제대로 지원이 안되어서, beta버전 배포판에 하드웨어 제어 SW도 누락되어서 직접 빌드하고 그랬거든요.
맥/iOS RDP클라에서 주요 조합키를 Windows에서 동작하도록 맵핑하는 동작이 있는데 맥버전에서는 이걸 또 끌 수 있다고 한다. 휴리스틱하게 잘 찍어서 원래 값으로 되돌려야 할 것 같은데...
"AI[1] 덕분에 ***가 민주적이 된다"는 말이 자주 나오고는 한다. 나는 이에 매우 회의적이다. 다른 것은 다 받아들여서 AI가 많은 사람들이 어떤 일을 매우 싸게 (거의 공짜로) 할 수 있게 해준다고 쳐도, AI로 만들어내기 힘든 수준의 "고급" 결과물은 여전히 존재하고, 이는 특정 직군의 고경력 전문가에게 넘어가게 된다. 문제는 이 "경력"을 어떻게 쌓느냐이다. 해당 직군의 초보자들은 AI에 밀려 경쟁력을 잃기 십상이고, 그들을 위한 여러 자리를 (AI를 활용하여 생산성을 높인) 전문가 한 명이 대체하기도 한다. 어떤 직군을 가질 수 있는 조건이 말하자면 이미 엄청난 실력을 가질 것이 되는 환경의 조성을 "민주적이다"라고 할 수 있을까?
정확히는 최근 많이 사용되는 미디어(Media) 생성 인공지능들과 대형 언어 모형(Large Language Model, LLM)들 ↩︎
@perlmint 저렴한 서버용 컴퓨터로 OS부터 해볼까 싶어서 고민 중입니다.. 맥 미니 쓰는 것이 좋을까요?
@leetekwoo OS부터 해본다는 것이 무엇을 의미하는지 알 수 있을까요? 일단 맥 미니에서는 서버 어플리케이션을 실행하기에는 좋으나, OS와 관련한 것은 무엇이든 어렵지 않나 싶습니다.
홈서버를 만드려 하는데, 서버용 컴퓨터로 무엇을 사용할 지 고민 중입니다.
@leetekwoo 저는 rpi4를 쓰다가, Local LLM 같이 고사양을 요구하는 것을 해보고 싶어서 M4 Mac mini를 추가로 쓰고 있어요.
새 블로그 글
[ko] SKT 유심 “재설정” 분석 – 무엇이 바뀌는가, 그리고 정말로 교체와 동일한가
MS는 너무 친절해서 iPadOS Windows앱에서 Cmd+a를 입력하면 Ctrl+a로 바꿔서 보내주나보다.
RDP서버 프로젝트 이름 골랐다. ARISU(Apple Rdp Implementation Server Unit?) 아리수라는 국산 사과품종이 있다고 합니다. 약어는 당연히 어거지로 ㅎ...
어쨌든 이제 크게 키보드 조합 입력을 더 구현하고, 알림 영역에 등록하고 앱 번들 만들기까지 하면 최소한의 쓸 수준은 될 것 같다. 그 이후에는 적정 해상도로 변경, 클립보드 구현, 사운드 까지 하면 아마도 끝...?
아 인증도 좀 더 제대로 해야지. 그리고 몇가지는 정리해서 RDP 프로토콜 구현체 라이브러리에 기여 넣어야지
맥 미니에 아이패드에서 Windows app(구 Microsoft RDP)로 접속하기
사실 이미 맥용 RDP 상용 서버가 있긴합니다. 그냥 집에서 혼자 쓸거에는 아까워서 만드는 겁니다...
맥 미니에 아이패드에서 Windows app(구 Microsoft RDP)로 접속하기
스크린캡처 권한이 무슨 기준으로 주어지는지 잘 모르겠는데, 터미널 안에서 실행시키면 터미널 앱에 스크린 캡처 권한을 주고 쓰게 된다. launchctl로 실행 시키면 cli 바이너리 자체에 스크린캡처 권한을 주게 되는데, 이건 빌드 할 때마다 다시 권한을 주라고 한다. 그리고 아마도 설정 UI상의 문제로 이미 권한이 주어진 것 처럼 보여서 삭제 후 재등록 같은 작업이 필요하다.
어쨌든 이제 크게 키보드 조합 입력을 더 구현하고, 알림 영역에 등록하고 앱 번들 만들기까지 하면 최소한의 쓸 수준은 될 것 같다. 그 이후에는 적정 해상도로 변경, 클립보드 구현, 사운드 까지 하면 아마도 끝...?
전에 만들다 방치하고 있던 macOS RDP서버를 일요일에 다시 건드렸고, 트리플 버퍼 + 갱신된 영역만 복사 및 전송을 구현했다. 확실히 로컬 네트워크 상에서는 반응성이 좋아졌다.
스크린캡처 권한이 무슨 기준으로 주어지는지 잘 모르겠는데, 터미널 안에서 실행시키면 터미널 앱에 스크린 캡처 권한을 주고 쓰게 된다. launchctl로 실행 시키면 cli 바이너리 자체에 스크린캡처 권한을 주게 되는데, 이건 빌드 할 때마다 다시 권한을 주라고 한다. 그리고 아마도 설정 UI상의 문제로 이미 권한이 주어진 것 처럼 보여서 삭제 후 재등록 같은 작업이 필요하다.
전에 만들다 방치하고 있던 macOS RDP서버를 일요일에 다시 건드렸고, 트리플 버퍼 + 갱신된 영역만 복사 및 전송을 구현했다. 확실히 로컬 네트워크 상에서는 반응성이 좋아졌다.
[단독] “이 정도면 봐주겠지”...SKT 해킹 대응 총력 약속 깨고 가입자 유치 열올려 - 매일경제
https://www.mk.co.kr/news/it/11326438
쟤들은 기본적으로 양심이 없다.
많은 언어에서 배열이 primitive로 주어지기 때문에 간과하기 쉬운데, 실제로 배열은 Binary Trie이다. 인덱스 0b01101010
로 어떤 배열을 접근한다는건 왼오오왼오왼오왼
으로 트리를 타고 내려가는 것이다. 실제로 칩에서 어떻게 동작할지를 상상해보면 좋다.
개인적으로 블루스카이의 꽃은 커스텀 피드라고 생각해요 빅테크 SNS의 알고리즘: - 어떻게 도는지 아무도 모름 - 이용 시간이 늘기만 하면 됨 - 이용자들에게 미칠 해악은 전혀 고려하지 않음 블루스카이의 알고리즘: - 한국어 포스트를 모아보는 피드 (실제로 있음) - 일주일치 밀린 블스 따라잡기 (실제로 있음) - 📌이라고 답글을 달면 북마크가 되는 피드 (실제로 있음) - 리포스트 없이 수제포스트만 보여주는 피드 (실제로 있음) - 블친들의 마지막 한 포스트씩 보여주는 피드 (실제로 있음)
크롬 리모트 데스크탑은 아이패드에서 쓸만하지 못합니다. 왜 앱이 없고 브라우저에서 쓰게 되어있는지 모르겠지만 그덕에 이상한 동작과 버그가... ㅠ
(2025-05-24) FediDev KR 스프린트 두 번째 모임
2025년 5월 24일 스프린트 모임의 기록을 남깁니다.
오늘 박현우 님(@lqezPark Hyunwoo)께서 Fedify 로고로 배지를 만들어 와주셨습니다! FediDev KR 두 번째 스프린트 모임 오신 분들께 나눠드리고 있어요.
테스트가 일부는 멀쩡한데 나머지는 앞서 잘 지킨 규칙을 틀린 잘 못 된 테스트를 작성해줘버렸다. 결국 손으로 고치고... 고친 것 기반으로 다시 고치라고 시키고... 그러는 중에 버그를 발견해서 고치고... 일을 줄여주길 원했는데 숨겨져 있던 일만 찾아주는 AI...
통신사 해킹 사태 등의 보안 사고에 대해 IT쪽으로 조금이라도 지식이 있는 사람과 아닌 사람(e.g. 우리 엄마 아빠)의 통신사의 잘못에 대한 분노의 크기가 다른거 같다. 가령 나는 해커가 RSA2048를 해독하는 알고리즘이라도 발명해서 해킹했다면 크게 화가 안날것이다. 굿잡, 어쩔수없지 정도? 근데 이번 사고의 디테일은 몰라도 그런거랑은 전~혀 관련 없다는건 당연하다.
근데 우리 엄마도 이게 통신사의 인재라는건 아는데, 동시에 해커들도 뭔가 방어하기 어려운 첨단 기술 그런걸 썼다고 막연히 생각하는거 같다. 그래서 나처럼 통신사들이 한방에 골로 가도 할말 없을 만큼의 잘못을 저질렀다고까지 생각하고 분노하진 않는듯...
https://www.boannews.com/media/view.asp?idx=137345 정황을 조합한 추정이긴 하지만 신뢰가 없는 곳들이라 진짜 일지도...
미리보기가 안나오네... KT도 SKT가 당한 공격에 당했을 수 있다는 의혹 기사입니다
https://www.boannews.com/media/view.asp?idx=137345 정황을 조합한 추정이긴 하지만 신뢰가 없는 곳들이라 진짜 일지도...
모 "보안 전문가" 어용교수 양반이 IMEi 스푸핑이 불가능하다고 하는데,
XDA나 4PDA 밥 일주일이라도 먹은 사람이라면 이 말이 틀린 것을 바로 알 것...
왜 이렇게 뻔한 거짓말을 하는지 모르겠음.
내일은 테스트 코드 짜기 시켜야지가 결국 오늘이 되어버렸고, 시켜놓고 집가는 중...
AI직원의 출근거부사태에 이어, 업데이트가 몇분째 없길래 뭐하고 있냐고 물으니까 황급하게 다시 일하기 시작했다(아마 이용자가 몰려서인것으로 예상). 졸기까지하고 사람 다 됐구만.
흠, 단문 기능에는 이름에 걸맞게 길이 제한을 두는 게 좋으려나? 대충 500자에서 1,000자 정도로? 🤔
@hongminhee洪 民憙 (Hong Minhee) 장문 기능을 권유하고 승인하면 장문 UI로 작성한 내용을 옮겨주면 좋지 않을까요?
아아~ 여러분 이만한 기여 맛집이 어디 없습니다~
ActivityPub 기반의 오픈소스 블로깅 서비스 HackersPub에 현장에서 기여할 수 있는 기회! 그 외에도,,,
* Fedify : ActivityPub 기반의 소프트웨어 개발하는 난이도를 낮춰주는 라이브러리
* Hollo : 1인 블로깅 플랫폼
* 혹은... 프론트엔드 하시는 분 한정, 마스토돈 클라이언트 만들기 온보딩까지 가능...!!!!
https://hackers.pub/@hongminhee/0196b961-2b85-7b25-b6cf-9900405d52eb

5월 24일(土) 한국 연합우주 개발자 모임(FediDev KR)에서 두 번째 스프린트 모임을 개최합니다! 장소는 뚝섬역 5번 출구쪽에 위치한 튜링의 사과(@TuringAppleDev)입니다. 참고로 스프린트 모임이란 함께 모여서 오픈 소스 코딩을 하는 자리인데, 한국 연합우주 개발자 모임의 스프린트에서는 새로운 연합우주 서비스나 앱을 개발하거나, 번역이나 문서에 기여하는 등 연합우주와 관련된 다양한 오픈 소스 활동을 모여서 함께 합니다. 지난 스프린트 모임의 기록을 스프린트 블로그(@sprints.fedidev.kr)에서 살펴보실 수 있습니다. 저는 그날 Fedify, Hollo, Hackers' Pub에 기여하시고자 하는 분들을 옆에서 도와드릴 예정입니다. Fedify, Hollo, Hackers' Pub에 기여해보고 싶었던 분들이 계시다면 모임에 참가하여 저와 함께 스프린트를 해보는 것도 좋을 것 같습니다. 이번 모임에 관심이 있으신 분은 행사 신청 페이지를 참고하시기 바랍니다.
5월 24일(土) 한국 연합우주 개발자 모임(FediDev KR)에서 두 번째 스프린트 모임을 개최합니다! 장소는 뚝섬역 5번 출구쪽에 위치한 튜링의 사과(@TuringAppleDev)입니다. 참고로 스프린트 모임이란 함께 모여서 오픈 소스 코딩을 하는 자리인데, 한국 연합우주 개발자 모임의 스프린트에서는 새로운 연합우주 서비스나 앱을 개발하거나, 번역이나 문서에 기여하는 등 연합우주와 관련된 다양한 오픈 소스 활동을 모여서 함께 합니다. 지난 스프린트 모임의 기록을 스프린트 블로그(@sprints.fedidev.kr)에서 살펴보실 수 있습니다. 저는 그날 Fedify, Hollo, Hackers' Pub에 기여하시고자 하는 분들을 옆에서 도와드릴 예정입니다. Fedify, Hollo, Hackers' Pub에 기여해보고 싶었던 분들이 계시다면 모임에 참가하여 저와 함께 스프린트를 해보는 것도 좋을 것 같습니다. 이번 모임에 관심이 있으신 분은 행사 신청 페이지를 참고하시기 바랍니다.
hackers.pub
Link author: 洪 民憙 (Hong Minhee)@hongminhee@hackers.pub
아아~~~ 기여맛집 하나 더! 생겼습니다!!!
플러터로 만드는 마스토돈 클라이언트!! 잘하면 이번 반기안에 출시가 가능할지도!? 여러분의 기여가 함께 한다면 속도가 더 붙을지도 몰라요!?!?
플러터 앱 개인개발하고 있는거 생각보다 속도가 잘 붙고 있어서, 이번 fedidev kr 스프린트 모임에서 기여받을 수 있을 정도는 준비가 가능할 것 같습니다.... SNS 클론코딩이지만 클론코딩이 아닌 실제로 쓸 수 있는 플러터 기반의 소셜앱 만들고 싶은 분들 붙으세요,,
https://social.silicon.moe/@kodingwarrior/114537296207291091
Windows Subsystem for Linux(WSL)이 오픈소스로 열렸다는 소식!
그래도 내일 할 일에는 테스트 작성이 있으니 시켜야지
LLM 좀 더 쓰긴 해야겠는데 손이 잘 안간다.
이게 뭐야 시발
The Official Python Documentary has published their teaser trailer at PyCon US 2025, and I'm so honored to be part of the story of Python along with other prominent Python figures.
Check the trailer, and watch the official launch of the documentary at EuroPython later this year.
SKT 민관합동 조사단, 침해사고 2차 조사결과 발표
------------------------------
- SKT의 리눅스 서버 약 3만여대 조사, 감염서버 총 23대, 악성코드 총 25종(BPFDoor계열 24종 + 웹셸 1종) 확인
- 유출된 유심정보 규모가 *9.82GB* 이며, 가입자 식별키(IMSI) 기준 *26,957,749건*
- 정밀 분석한 15대 서버중 2대는 통합고객인증 서버와 연동되는 서버들로 고객 인증을 목적으로 호출된 단말…
------------------------------
https://news.hada.io/topic?id=20991&utm_source=googlechat&utm_medium=bot&utm_campaign=1834
ollama 모델 리포지터리가 oci 레지스트리라고???? 그냥 도커 이미지 저장소랑 호환된다고???? 신기하다
Fedify is looking for new partnership opportunities!
What is Fedify?
#Fedify is an #ActivityPub-based federated server framework that helps developers easily integrate their applications with the #fediverse, a decentralized social network. It simplifies the complex implementation of the ActivityPub protocol, significantly reducing development time. Fedify is an open-source project available under the MIT license.
💼 Projects using Fedify
Various projects are already leveraging Fedify:
- Ghost: A professional publishing platform with millions of users, open source under MIT license, and a major sponsor and partner of Fedify.
- Hollo: A lightweight microblogging platform for individual users (open source, AGPL-3.0)
- Hackers' Pub: A fediverse blogging platform for software engineers (open source, AGPL-3.0)
- Encyclia: A bridge service that makes ORCID academic records available via ActivityPub
🚀 Value provided by Fedify
- 80% development time reduction: Utilize a proven framework instead of complex ActivityPub implementation
- Immediate fediverse compatibility: Instant compatibility with various fediverse services including Mastodon, Misskey, Pleroma, Pixelfed, PeerTube, etc.
- Expert technical support: Direct support from ActivityPub and Federation protocol experts
- Custom development: Tailored feature development to meet your specific requirements
🤝 Potential collaboration models
- Custom consulting and integration support: Professional assistance for integrating Fedify into your platform
- Custom feature development: Development and implementation of specific features needed for your platform
- Long-term technical partnership: Long-term collaboration for continuous development and maintenance
🌟 Benefits of collaborating with Fedify
- Technical advantage: Save time and resources compared to in-house implementation
- Brand image: Enhance corporate image through support of the open-source ecosystem
- Entry to decentralized social networks: Easily participate in the fediverse ecosystem
- Competitive edge: Strengthen product competitiveness through social features
📩 Interested?
If you're considering implementing ActivityPub or wish to collaborate with the Fedify project, please get in touch:
- Email: sponsor@fedify.dev
- Fediverse:
@fedifyFedify: an ActivityPub server framework
- GitHub: https://github.com/fedify-dev/fedify
We're excited to explore customized collaboration opportunities that align with your requirements and goals.
Fedify는 새로운 후원 파트너를 찾고 있습니다!
Fedify란?
Fedify는 #ActivityPub 기반 연합형 서버 프레임워크로, 개발자들이 분산형 소셜 네트워크인 #연합우주(#fediverse)에 애플리케이션을 쉽게 통합할 수 있도록 돕습니다. 복잡한 ActivityPub 프로토콜 구현을 단순화하여 개발 시간을 크게 단축시킵니다. MIT 라이선스 하에 제공되는 오픈 소스 프로젝트입니다.
💼 Fedify를 활용하는 프로젝트들
다양한 프로젝트들이 이미 Fedify를 활용하고 있습니다:
- Ghost: 수백만 사용자를 보유한 전문적인 오픈 소스(MIT 라이선스) 퍼블리싱 플랫폼으로, Fedify의 주요 후원사이자 파트너입니다.
- Hollo: 개인 사용자를 위한 경량 마이크로블로그 (오픈 소스, AGPL-3.0)
- Hackers' Pub: 소프트웨어 엔지니어를 위한 연합우주 블로그 플랫폼 (오픈 소스, AGPL-3.0)
- Encyclia: ORCID 학술 기록을 ActivityPub을 통해 제공하는 브리지 서비스
🚀 Fedify가 제공하는 가치
- 개발 시간 80% 단축: ActivityPub의 복잡한 구현 대신 검증된 프레임워크 활용
- 즉각적인 연합우주 호환성: Mastodon, Misskey, Pleroma, Pixelfed, PeerTube 등 다양한 연합우주 서비스와 즉시 호환
- 전문 기술 지원: ActivityPub 및 연합 프로토콜 전문가의 직접 지원
- 맞춤형 개발: 귀사의 특정 요구사항에 맞는 맞춤형 기능 개발
🤝 가능한 협력 모델
- 맞춤형 컨설팅 및 통합 지원: 귀사 플랫폼에 #Fedify 통합을 위한 전문적 지원
- 맞춤형 기능 개발 의뢰: 귀사에 필요한 특정 기능의 개발 및 구현
- 장기적인 기술 파트너십: 지속적인 개발 및 유지보수를 위한 장기 협력 관계
🌟 Fedify와 협력했을 때의 이점
- 기술적 이점: 자체 구현 대비 시간과 리소스 절약
- 브랜드 이미지: 오픈 소스 생태계 지원을 통한 기업 이미지 강화
- 분산형 소셜 네트워크 진입: 연합우주 생태계에 쉽게 참여
- 경쟁 우위: 소셜 기능을 통한 제품 경쟁력 강화
📩 관심이 있으신가요?
ActivityPub 구현을 고려 중이시거나, Fedify 프로젝트와 협력하고 싶으시다면 연락 주세요:
- 이메일: sponsor@fedify.dev
- 연합우주:
@fedifyFedify: an ActivityPub server framework
- GitHub: https://github.com/fedify-dev/fedify
귀사의 요구사항과 목표에 맞는 맞춤형 협력 방안을 함께 모색하겠습니다.
SKT 개인정보·IMEI 유출 가능성…3년전 악성코드 설치 추정 (출처 : 연합뉴스 | 네이버 뉴스) https://naver.me/GHYtLdPR
[속보] SKT 해킹, 사실상 전 가입자 유심정보 털렸다... 2695만건 유출 (출처 : 조선일보 | 네이버 뉴스) https://naver.me/57QI4BNH
@perlmint 아항. apollo state를 보고 GraphQL 엔드포인트 찾아봄 -> 못찾음 -> apollo state 사용 이런 흐름이었나 보군요.
@bglbgl gwyng 네. 개발자도구에서 xhr이 안잡히네? → 그럼 렌더링 되어서 오나...? → 그것도 아니고, Apollo state발견. 이런 뒤에 쭉 이야기 하신 흐름이었습니다.
@perlmint 그럼 GraphQL을 쓴다는 사실은 어떻게 아신거죠?
@bglbgl gwyng 다른 페이지에서는 요청을 날리고 있는데, 약간 서비스간의 경계...? 같은 지점으로 보이며, 도입 시점이 다른 것도 있어서, 같은 엔드포인트를 쓸거라는 기대가 없습니다. 무엇보다 Apollo state가 있으면 GraphQL 쓰는게 맞지 않나요...?