Cat a mouse: ASCII art pointers The Xerox Alto, originally released in 1973, was the first computer to feature the now-familiar angled mouse pointer. The Alto's bitmapped pointer looked like this (redrawn from Fig. 2 here):

Your task in this code-golf challenge is to write a program/function that generates an ASCII art representation of the mouse pointer pictured above. Rules:

Input is a positive integer \$n\$, which is a scaling factor for the output.
Represent each black pixel as an \$n\times{}n\$ block of any single printable character. (The test cases use @, which vaguely resembles a mouse viewed from above.)
Similarly, represent each empty pixel to the bottom/left of the pointer as an \$n\times{}n\$ block of a second printable character. (Spaces are used in the test cases.)
Optionally, your output may also include the empty pixels to the top/right of the pointer, represented by the same character chosen under Rule 3.
Any sensible output format (e.g. multi-line string, array of strings, matrix of characters) is acceptable.
A single trailing newline at the end of the output is permitted.

Test cases
\$n = 1\$
@
@@
@@@
@@@@
@@@@@
@@@@@@
@@@@@@@
@@@@
@@ @@
@  @@
    @@
    @@
     @@
     @@
      @@
      @@

\$n = 2\$
@@
@@
@@@@
@@@@
@@@@@@
@@@@@@
@@@@@@@@
@@@@@@@@
@@@@@@@@@@
@@@@@@@@@@
@@@@@@@@@@@@
@@@@@@@@@@@@
@@@@@@@@@@@@@@
@@@@@@@@@@@@@@
@@@@@@@@
@@@@@@@@
@@@@  @@@@
@@@@  @@@@
@@    @@@@
@@    @@@@
        @@@@
        @@@@
        @@@@
        @@@@
          @@@@
          @@@@
          @@@@
          @@@@
            @@@@
            @@@@
            @@@@
            @@@@

\$n = 3\$
@@@
@@@
@@@
@@@@@@
@@@@@@
@@@@@@
@@@@@@@@@
@@@@@@@@@
@@@@@@@@@
@@@@@@@@@@@@
@@@@@@@@@@@@
@@@@@@@@@@@@
@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@
@@@@@@@@@@@@
@@@@@@@@@@@@
@@@@@@   @@@@@@
@@@@@@   @@@@@@
@@@@@@   @@@@@@
@@@      @@@@@@
@@@      @@@@@@
@@@      @@@@@@
            @@@@@@
            @@@@@@
            @@@@@@
            @@@@@@
            @@@@@@
            @@@@@@
               @@@@@@
               @@@@@@
               @@@@@@
               @@@@@@
               @@@@@@
               @@@@@@
                  @@@@@@
                  @@@@@@
                  @@@@@@
                  @@@@@@
                  @@@@@@
                  @@@@@@
JavaScript (ES6),  92 91  90 bytes
Saved 1 byte thanks to @Neil
Returns a string with \$0\$'s for transparent pixels and \$1\$'s for black pixels.
n=&gt;(g=k=&gt;--k?(x=k/n%8,y=k/n/n/8,(~1&lt;&lt;(y&gt;9?y-9:13-y)|3&lt;&lt;y/2)&gt;&gt;x&amp;1)+[`
`[x]]+g(k):1)(n*n&lt;&lt;7)

Try it online!
or Try it with the characters used in the challenge for easier comparison
How?
Given the scaling factor \$n\$ as input, we output the bit \$\lfloor x\rfloor\bmod 8\$ of the bitmask corresponding to the row \$\lfloor y\rfloor\$ for each \$k\$, \$0\le k &lt;128\times n^2\$, with \$x=k/n\$ and \$y=k/(8\times n^2)\$.
To generate the bitmask of a given row, we use two small expressions whose results are OR'd together. Only the 8 least significant bits are shown below. The other ones are ignored anyway.
floor(y) -&gt; A(y)  OR  B(y)   =  result
   15     10000000  10000000   10000000    with:
   14     11000000  10000000   11000000
   13     11100000  11000000   11100000    A(y) = ~1 &lt;&lt; (y &gt; 9 ? y - 9 : 13 - y)
   12     11110000  11000000   11110000    B(y) = 3 &lt;&lt; y / 2
   11     11111000  01100000   11111000
   10     11111100  01100000   11111100
    9     11111110  00110000   11111110
    8     11100000  00110000   11110000
    7     11000000  00011000   11011000
    6     10000000  00011000   10011000
    5     00000000  00001100   00001100
    4     00000000  00001100   00001100
    3     00000000  00000110   00000110
    2     00000000  00000110   00000110
    1     00000000  00000011   00000011
    0     00000000  00000011   00000011

A linefeed is appended to the output whenever \$k/n\$ is a multiple of \$8\$.