Tropicana Grandhill Twine Pines is another condominium project at Genting Highlands. According to its master plan, it is more like a new township.
Location is at higher latitude than Genting Permai.
Personally, I own a unit at Windmill Upon Hills condominium. It is another competition in the making for my unit.
So I check my competition whether it is a real threat to my unit or whether it is good potential investment.
The unit is fully furnished, floor is not laminated so you will have cold feet at this unit. Balcony is a bit small compared to my unit.
It is more expensive per sqft vs Windmill Upon Hills.
Scale Model
tropicana grandhill township plan genting highlandstropicana grandhill twin pines scale model accesstropicana twin pines genting highlands scale model
Layout
tropicana grandhill twin pines layout scale modeltropicana grandhill scale model layouttropicana grandhills twin pines layout A Btropicana grandhills twin pines layout B Ctropicana grandhills twin pines layout D E F
Show Unit Interior
Studio Show Unit – Layout A1
tropicana twin pines studio layout A1tropicana twin pines studio A1tropicana twin pines bedroom studio layout A1tropicana grandhill twin pines studio show unit bathroomtropicana twin pines genting highlands studio show unit toilet
Gross Purchase Price: RM764,000 (roughly RM1,000 per sqft)
Bumi Rebate: 5%
Other Rebate: 8%
Net Price: RM667,736
Free S&P & Loan Legal Fee
Free Loan Stamp Duty
Free first year maintenance fee and sinking fund
Contact
https://www.tropicanagrandhill.com/
Sales Agent: Andrew Tee
Tel: 012 628 3631
Conclusion
For me it is not a real threat to Windmill Upon Hills because:
Quite far from amenities, except if all the planned amenities within the township are well implemented
More expensive per sqft with nearly similar furnishing / facilities / features but balcony is much smaller.
Anyway different kind of guests will have different needs and what they are looking for. So Tropicana Grandhill Twin Pines could still have its own guests fan.
This is my first time having a Sharp TV and at same time Android TV. Most all of my TV is Samsung TV. Samsung has very good user experience and better quality in term of video & audio. Besides it can connect to my phone and has good after sales support.
I bought my first Sharp Android TV due to its cheaper price vs Samsung and plan to put it at my AirBnb unit.
I tried to play video from my USB drive using my Sharp Aquaos Android TV. To my dismay, it is very hard to do it, it is not intuitive like Samsung TV. Besides it is lacks of documentation even after Google it.
After try and error, I found how to do it.
Go to Dashbord by Pressing the “House Button” at the Remote Control Then Click Apps
sharp aquos android tv remote controlsharp aquos android tv dashboard
Select & Clock Get More Apps
sharp aquos android tv get more apps
Scroll Down and Select Video Players & Editors
sharp aquos android tv install video player
Choose Nova Video Player
sharp aquos android tv select nova video player
Click Install
sharp aquos android tv install nova video player
After Installation, Click Open
sharp aquos android tv open nova video player
Allow Nova Video To Access Your Files by Clicking Yes
sharp aquos android tv nova video player allows access
Choose Network & Files and Select External Drive
sharp aquos android tv nova video player choose network files and external drive
Now You Can Start Browsing Your Movies inside USB drive
sharp aquos android tv nova video player browse movies
For Example, I Selected Doctor Strange
sharp aquos android tv nova player doctor strange
You Can Immediately Play or Choose Subtitle
sharp aquos android tv nova player play
Scroll Down and Choose Subtitle from Online or Inside the USB Drive
sharp aquos android tv nova video player subtitle
Inside the USB Drive Choose File Name with Underscore
The underscore file is created automatically by Sharp Aquos TV
sharp aquos android tv nova video player select subtitle with underscore
Then Associate the File as Your Subtitle
sharp aquos android tv nova video player subtitle associate the file
Play the Movie and You Can See The Subtitle Starts Showing
sharp aquos android tv nova video player subtitle showing
Kegiatan menjual lot lidi yang semakin berleluasa berpunca dari masalah harga rumah yang semakin mahal, tiada ilmu berkaitan tanah dan keinginan untuk membina rumah di atas tanah sendiri. Tinjauan mendapati kegiatan ini sering tertumpu di kawasan pinggir bandar, yang mana sasaran pembelinya terdiri dari penduduk-penduduk kampung, pesara atau keluarga muda. Pentadbir-Pentadbir Tanah ingin memaklumkan bahawa terdapat banyak risiko yang akan dihadapi kepada pembeli-pembeli lot lidi.
Anda boleh membaca tulisan-tulisan di internet tentang risiko pembelian lot lidi ini dan kebanyakan hujah-hujah yang dikemukakan adalah benar belaka. Risiko ini mungkin tidak berlaku pada masa sekarang, tetapi percayalah ianya akan berbangkit pada masa hadapan. Secara ringkasnya, risiko-risiko yang perlu dihadapi adalah seperti berikut :-
1. NAMA TIADA DALAM GERAN
Dokumen yang menunjukkan anda ialah seorang pemilik di dalam lot lidi hanyalah dengan melalui Surat Pemegang Amanah sahaja. Hanya seorang yang akan menjadi Pemegang Amanah bagi kesemua pemilik-pemilik lot lidi dan nama Pemegang Amanah itu sahaja yang akan didaftarkan di dalam geran. Sebagai contoh jika ada 12 orang pembeli lot lidi di dalam satu kawasan, nama Pemegang Amanah akan tertera di dalam geran sebagai mewakili 11 pembeli yang lain. Pemegang Amanah ini boleh jadi terdiri daripada salah seorang pembeli lot lidi atau boleh jadi juga pemilik asal tanah berkenaan. Seperti yang pernah disebutkan di dalam artikel sebelum ini, geran adalah punca kuasa yang sangat penting di dalam apa-apa urusan tanah. Jika nama tiada di dalam geran, mereka tidak layak untuk berurusan apa-apa mengenai tanah berkenaan walaupun diikat dengan Surat Pemegang Amanah.
2. SUKAR UNTUK BERJUAL BELI
Sekiranya salah seorang pembeli lot lidi ingin menjual semula lotnya kepada orang lain, tiada prosedur undang-undang yang sah boleh dilaksanakan untuk urusan jual beli berkenaan melainkan mereka terpaksa membuat Surat Pemegang Amanah baru yang memerlukan Pemegang Amanah sendiri untuk melaksanakannya. Sekiranya Pemegang Amanah itu enggan untuk menukar nama atas apa-apa sebab (perbalahan, tiada masa, malas, nyanyuk, sudah meninggal dunia atau sebagainya) maka proses pertukaran nama itu tidak boleh berlaku.
3. KESALAHAN LANGGAR SYARAT TANAH
Lot lidi lazimnya ialah lot yang bersyarat pertanian. Membina rumah di atas lot bersyarat pertanian adalah kesalahan serius seperti yang termaktub di dalam Seksyen 125 Kanun Tanah Negara. Anda akan dikenakan denda atau tanah anda boleh dirampas.
4. TIADA PAMPASAN JIKA ADA PENGAMBILAN
Jika Kerajaan berhasrat untuk membuat pengambilan di atas tanah berkenaan kerana sebab-sebab tertentu, pembeli lot tidak mempunyai apa-apa hak untuk menuntut pampasan daripada Kerajaan. Hanya Pemegang Amanah yang akan dipanggil untuk sesi pendengaran malah wang pampasan akan diberikan kepada Pemegang Amanah sahaja. Pembeli-pembeli lot perlu berurusan dengan Pemegang Amanah untuk membahagi-bahagikan wang pampasan.
5. TANAH TIDAK BOLEH DIWARISKAN JIKA ADA KEMATIAN
Oleh kerana nama pemilik-pemilik lot lidi tidak didaftarkan di dalam geran, waris-waris si mati tidak boleh memulakan prosedur pesaka kerana secara teorinya tanah berkenaan adalah milik Pemegang Amanah.
6. PEMEGANG AMANAH MENINGGAL DUNIA
Ini adalah risiko terbesar yang perlu dihadapi oleh pemilik-pemilik lot lidi. Jika Pemegang Amanah meninggal dunia, pembeli-pembeli lot lidi bolehlah diibaratkan seperti layang-layang terputus tali. Memang benar mereka boleh melantik Pemegang Amanah yang baru, tetapi prosedurnya bukanlah semudah seperti yang disangka. Anda akan berhadapan dengan ketidaktentuan, prosedur pesaka yang rumit, masa yang lama, kos yang tinggi dan kemungkinan berlaku perbalahan yang berpanjangan.
JANGAN TERPEDAYA DENGAN KATA-KATA PENJUAL LOT LIDI SEPERTI:-
1. Akan membuat tukar syarat atas tanah itu selepas semua lot habis dijual.
2. Akan mengemukakan pelan pembangunan kepada pihak berkuasa.
3. Akan pecahkan lot secara betul menggunakan juruukur berlesen pada masa akan datang.
4. Sempadan lot lidi akan ditanam dengan batu sempadan.
5. Nama akan ditukar secara automatik jika Pemegang Amanah meninggal dunia.
6. Tidak akan ada masalah kerana ada Surat Pemegang Amanah.
7. Lot lidi adalah sah dari segi undang-undang.
Banyak lagi risiko yang tidak dinyatakan di sini. Justeru itu, Pentadbir-Pentadbir Tanah menasihatkan supaya mengelakkan diri dari terlibat dengan pembelian lot lidi. Biarlah membeli tanah atau rumah yang mahal sedikit asalkan mengikut lunas undang-undang kerana ia akan membantu sekiranya terdapat masalah-masalah pada masa akan datang. Adalah dikhuatiri kediaman idaman anda yang sepatutnya memberi keselesaan kepada keluarga dan boleh diwariskan kepada anak-anak akan berakhir dengan kerugian yang besar, perbalahan keluarga dan penyesalan di kemudian hari.
KENYATAAN PENTING :
Penerangan di atas adalah sangat ringkas bagi memudahkan kefahaman kepada rakyat yang tidak mengetahui prosedur undang-undang tanah. Terdapat prosedur-prosedur teknikal yang tidak dinyatakan dan anda dinasihatkan untuk mendapatkan pandangan dari Pejabat Tanah berkaitan.
Kata kunci :-
Lot Lidi : Sebidang tanah yang mempunyai geran yang sah, tetapi kemudiannya dipecah-pecahkan lot kecil untuk dijual semula dengan tujuan untuk membina rumah.
Pemegang Amanah : Salah seorang yang melantik diri sendiri atau dilantik oleh pembeli-pembeli lot lidi untuk memegang amanah bagi semua pembeli dan hanya namanya seorang yang didaftarkan di dalam geran.
Surat Pemegang Amanah : Surat berupa perjanjian di antara pembeli-pembeli dengan Pemegang Amanah yang menyatakan bahawa Pemegang Amanah akan memegang hak di atas tanah berkenaan. Ia juga dipanggil Surat Ikatan Amanah.
Pesaka : Prosedur pembahagian tanah kepada waris selepas berlakunya kematian pemilik tanah.
I’m happy my property loan fully settled on 4/6/2020. My loan fully settled 13 years earlier.
Every month, extra money I had, I would use it to reduce my loan principal. This discipline enables me to have additional cash flow from the loan. I’m also excited I don’t need to pay lots of loan interest by fully settled it early.
Of course, I had opportunity lost due to use the cash to reduce loan principal instead of investing it. But I don’t believe in leveraging so much that’s why I wants to settle it.
Last time I fully settled 2 of my cars loans earlier by around 4-5 years.
My next target to settle my other rental property loans.
My house is infected with German cockroaches. It is small cockroaches that show up in the dark at night. They like to creep among cups and glasses inside my kitchen cabinet.
I tried few methods such as the Ridsect bait and Perfector gel baits. Unfortunately it is not effective.
I wanted to call professional cockroach killer but usually they will charge around RM1,000 and claim can completely eradicated the infestation after 4 rounds of putting cockroach poison.
The Effective and Affordable Green Leaf Cockroach Bait Powder
I decided to try bait powder first and see its effect. I bought at Lazada for RM20 for 50 sachets.
bought poison powder at lazadagreen leaf cockroach poison powder
I put the powder under my kitchen cabinets drawers within 2 days lots of German cockroaches died. The yellowish powder is the cockroach poison.
getting rid of cockroachdied cockroaches
When I do inspection at my kitchen cabinet at night, I don’t see anymore the cockroaches crawling on my cups, glasses and plates.
You can buy the Green Leaf cockroach bait powder at RM24.50 with delivery charges.
lazada green leaf cockroach bait powder
Ineffective Ridsect Cockroach Bait
I did try for more than a year Ridsect cockroach bait. Put the baits where the cockroach like to hide but it seems the cockroaches population is getting bigger and daring.
You can buy it at RM11.30 at Jaya Grocer.
jayagrocer ridsect cockroach bait
Ineffective Perfector Gel Bait
This one is expensive around RM22. You can buy it at Jaya Grocer as well. This method also proves ineffective tried it so many times for few years.
In my previous post, I was happy that my bill was in line with my expectation. To my surprise, when I see my TNB bill spike for June 2020, it is RM606.85.
On average, my monthly bill is RM260. MCO started in March.
So assuming my June bill is also RM260 so my bill is additional of RM346.85. According to TNB, during MCO (March to May) they did estimation only. The real meter reading is on June. So if I average out RM346.85 / 3Â = RM115.60 additional per month.
Why divided by 3? Because I take from March till May only. Bear in mind, MCO started in 18th March. So it means March only half month we stayed at home.
So roughly my monthly bill during MCO is RM260 + RM115.60 = RM375.60.
Barbershop is now open during Recovery Movement Control Order (RMCO).
So I took this opportunity to have my hair cut. I went to my usual Kedai Gunting to have my hair cut after so many months. The price increase from RM14 to RM19.
kedai gunting rambut dmsr new rate
As usual, before entering the barbershop you need to record your visit and sanitize your hand.
The barber has their protective gear to ensure we are safe from virus infection.
kedai gunting rambut dmsr new sop
For anyone who are 60 years old and above can make an appointment from 10AM to 12PM.
Previously I use Babel Javascript to convert my javascript to ECMA2015. I like to program in object oriented because I learned my first programming language in C/C++ and Java.
Doing procedural language like C was much easier vs object oriented Java. But in the long run, I noticed that coding in object oriented is much easier to maintain.
Steps to Convert Javascript to TypeScript
Install TypeScript
1
npm install-gtypescript
-g to make it global so all your JavaScript programs can be migrated to TypeScript.
Create tsconfig.build.json, tsconfig.json and tslint.json
At your root project folder run the below command.
1
tsc--init
I edited my tsconfig.json as follows:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
{
"compilerOptions":{
"target":"es2017",
"module":"commonjs",
"lib":["dom","dom.iterable","esnext"],
"rootDir":".",
"moduleResolution":"node",
"resolveJsonModule":true,
"removeComments":true,
"emitDecoratorMetadata":true,
"experimentalDecorators":true,
"allowSyntheticDefaultImports":true,
"types":["node","mocha","chai"],
"typeRoots":["node_modules/@types","src/types"],
"jsx":"react"
},
"exclude":["node_modules","dist","src/admin"],
"include":["src/**/*.ts","src/**/*.json"]
}
I added manually tsconfig.build.json and tslint.json
Change Your Existing Files Extension from .js to .ts
typescript change all js to ts extensiontypescript change all js to ts extension
Amend Coding T0 Follows TypeScript
Below are few examples TypeScript coding standard that you must follow.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#1 - require to import
constHumanoid=require("./humanoid/index.js");
//change require to import & remove file extension
import{Humanoid}from"./humanoid/index";
#2 - add export in front of class and remove module.exports
export classHumanoid extendsHumanoidReqHandler
//remove all line that have module.exports
module.exports=Humanoid;//delete this line
#3 - declare all global variables inside a class as class variables
this.taskName="something";
//then can call this.taskName inside your class after declare the variable name
protectedtaskName:string;
//#4 - declare abstract method by adding keyword abstract
//example of javascript - abstract method
if(this._execute===undefined){
thrownewError("Abstract method _execute()");
}
//put abstract in front of class keyword
abstractclassTask{
constructor(){}
abstract_execute():any;
}
//#5 - use import * as something from 'somewhere'
//if error class name .default is not a function decla
//example
importmfrom'moment';
TypeError:moment_1.defaultisnotafunction
//change to
import *asmfrom'moment';
If you Find below error, add return true at main async function.
typescript error promise contructor
1
2
3
4
5
(async function(){
console.log('start program');
console.log('end program');
returntrue;//add return true to solve error
}());
Besides, you can use TypeScript linter @ tslint (that was set up early) to fix any coding that doesn’t follow TypeScript standard. TypeScript standard is more strict vs JavaScript.
Example of tslint verbose message:
typescript tslint
Run Unit Test
I use mocha to do unit test.
1
npm install--save-dev@types/mocha
At package.json, add new script command
1
2
3
4
"scripts":{
...//other commands
"test-filename":"mocha -r ts-node/register"
},
Example if you want to run one individual unit test.
1
npm run test-filename./---g"./src/lib/utils/date-timestamp.test.ts"
If you found Error Cannot find module ‘ts-node/register’
Solution: save ts-node locally as develepment dependency.
1
npm install ts-node--save-dev
Run TypeScript Application
At the terminal or console, type
1
2
3
4
ts-node path-to-your-main-file
//example
ts-node./src/main.ts
Conclusion
Even though it takes time to convert from babel javascript into typescript but in the long run it is easier to understand the code and easier to maintain the code.
Besides, you just need to install ts-node and its linter is very good in displaying possible errors.
Benefits of using TypeScript
Easy debugging – Typescript shows directly line that throws an error
Strong type – any mismatch of variable will be highlighted by ts-lint
Less transpilation time – no need to compile like babel. If you have lots of .js files, it takes time to transpile it
Support better object oriented – it supports abstract, protected, private methods and variables.